Remote Method Invocation Flashcards
Define RMI…
The process of an object invoking the methods of another object on a different host on the network.
Briefly, how does the process of RMI work?
A server posts their object to the registry, and a client can search the registry for the object and then invoke it via a reference to the object.
Can class definitions be passed on RMI?
Yes.
Do programmers have to concern themselves with the procedures of the RMI process?
No, the RMI conducts the process. Programmers simply have to call the reference.
What are the 3 RMI Framework components? Define each…
Registry : Maps names to objects.
Server : Creates remote objects to host on the registry. Also creates accessible references to the objects.
Client : Searches registry for objects to invoke.
What are the 5 steps in creating a distributed remote service?
1 - Make an interface
2 - Implement the interfaces to create the concrete classes
3 - Build skeleton (server helper) and stubs (client helper)
4 - Start registry
5 - Start remote service
What is dynamic code loading?
When a class definition is loaded, so is a reference to the object. Thus, extensions to behaviour can be made at run time.
What is a class loader?
Class loaders are used behind the scenes whenever an instance of a class is created. They load the class to the program environment when the JVM is run.
What are the 3 types of class loader? Define each…
Bootstrap : Load the core Java classes for the JVM.
Extended : Load class that are platform specific.
System : Load classes contained in the CLASSPATH environment variable.
What are the 4 components of the Java RMI architecture? Define each…
Application Layer : Contains client and server applications.
Stub / Skeleton Layer : Stubs and Skeleton layer sit between the Application Layer and the Remote Reference Layer. They re-direct communications between these layers.
Remote Reference Layer : Interprets the requests made from clients to the remote objects.
Transport Layer : TCP/IP enables the connection between the 2 hosts to be made for communication.