Professional Documents
Culture Documents
116 Prof. Dr. Hussien Aly 117 Prof. Dr. Hussien Aly
118 Prof. Dr. Hussien Aly 151 Prof. Dr. Hussien Aly
Middleware layers
152 Prof. Dr. Hussien Aly 153 Prof. Dr. Hussien Aly
1
Sequence of RPC Operation Steps of a Remote Procedure Call
1. Client procedure calls client stub in normal way
2. Client stub builds message, calls local OS
3. Client's OS sends message to remote OS
4. Remote OS gives message to server stub
5. Server stub unpacks parameters, calls server
6. Server does work, returns result to the stub
7. Server stub packs it in message, calls local OS
• Stubs: 8. Server's OS sends message to client's OS
– client-side proxy for the actual procedure on the server.
– The client-side stub locates the server and marshals the parameters. 9. Client's OS gives message to client stub
– The server-side stub receives this message, un-marshaled the
parameters, and performs the procedure on the server. 10. Stub unpacks result, returns to client
154 Prof. Dr. Hussien Aly 155 Prof. Dr. Hussien Aly
156 Prof. Dr. Hussien Aly 157 Prof. Dr. Hussien Aly
integer
string
158 Prof. Dr. Hussien Aly 159 Prof. Dr. Hussien Aly
2
Remote Method Invocation: RMI Object Model
RMI = RPC + Object-orientation • Object references
– Objects accessed via object references
• Java RMI – Object references can be assigned to variables, passed as
arguments and returned as results
• Microsoft DCOM/COM+ • Interfaces
• CORBA – Provides a signature of a set of methods (types of
arguments, return values and exceptions) without
– Middleware that is language-independent specifying their implementations
• SOAP • Actions (invocations)
• Exceptions
– RMI on top of HTTP
• Garbage Collection
160 Prof. Dr. Hussien Aly 161 Prof. Dr. Hussien Aly
162 Prof. Dr. Hussien Aly 163 Prof. Dr. Hussien Aly
164 Prof. Dr. Hussien Aly 165 Prof. Dr. Hussien Aly
3
General MOM Architecture Message-Queuing Model(1)
166 Prof. Dr. Hussien Aly 167 Prof. Dr. Hussien Aly
168 Prof. Dr. Hussien Aly 169 Prof. Dr. Hussien Aly