![]() ![]() In case the parameters are objects, then they are serialized. In case of primitive type, the parameters are put together and a header is attached to it. These parameters may be of primitive type or objects. Whenever a client invokes a method that accepts parameters on a remote object, the parameters are bundled into a message before being sent over the network. The result is passed all the way back to the client. The RRL on the server side passes the request to the Skeleton (proxy on the server) which finally invokes the required object on the server. It passes the request to the RRL on the server side. When the client-side RRL receives the request, it invokes a method called invoke() of the object remoteRef. When the client makes a call to the remote object, it is received by the stub which eventually passes this request to the RRL. The following points summarize how an RMI application works − RRL(Remote Reference Layer) − It is the layer which manages the references made by the client to the remote object. stub communicates with this skeleton to pass request to the remote object. Skeleton − This is the object which resides on the server side. It resides in the client system it acts as a gateway for the client program. Stub − A stub is a representation (proxy) of the remote object at client. It manages the existing connection and also sets up new connections. Transport Layer − This layer connects the client and the server. Let us now discuss the components of this architecture. ![]() The following diagram shows the architecture of an RMI application. The client program requests the remote objects on the server and tries to invoke its methods. Inside the server program, a remote object is created and reference of that object is made available for the client (using the registry). In an RMI application, we write two programs, a server program (resides on the server) and a client program (resides on the client). ![]() RMI is used to build distributed applications it provides remote communication between Java programs. It is a mechanism that allows an object residing in one system (JVM) to access/invoke an object running on another JVM. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |