How does Java RMI differ from Jini?
Created May 4, 2012
Govind Seshadri
|
|
RMI clients use the class Naming.Lookup() for locating the requested RMI Service | Jini clients use the discovery process to locate Jini Lookup services. Discovery is done through multicast requests to well-known addresses or ports |
The service storing information about other service providers is the RMI registry | In Jini the service storing information about other service providers is called Jini Lookup Service |
The RMI client must know the RMI registry host explicitly. The same rule applies to RMI servers | The Jini clients search for the Jini service without any Service hosting knowledge |
The approach is more rigid since client is dependant on a particular service provider | The approach is more tolerant to service providers faults and maximizes client independence from a particular service provider |
The RMI proxy-stub approach is strictly adhered to | The Jini proxy concept is more protocol independent since it does not rely on generated fixed-protocol stubs. The proxy fulfills requests by itself or either uses an RMI call or uses an internal proxy provider to fulfill a request |
No concept of built in support for transactions, distributed events or leasing | Programming model provides for support for transactions, distributed events and leasing |