SlideShare a Scribd company logo
1 of 18
JAVA – REMOTE METHOD
INNOVATION
MADE BY : PRANKIT MISHRA
(141CC00007)
SUBMITTED TO : DR. RAKESH BHADONI
INTRODUCTION
 The Java Remote Method Invocation (Java RMI) is a Java API that
performs remote method invocation, the object-oriented equivalent of remote
procedure calls (RPC), with support for direct transfer of serialized Java classes
and distributed garbage collection.
 Usage of the term RMI may denote solely the programming interface or may
signify both the API and JRMP, IIOP, or another implementation, whereas the
term RMI-IIOP specifically denotes the RMI interface delegating most of the
functionality to the supporting CORBA implementation.
WHY IT IS NEEDED..??
 Provide user with a “thin client “
allows good performance on lowed workstations
 Run server on high end hardware
maximize $ investment over many clients
server remote from client
 Distributed network object.
WHAT IS NEEDED FOR RMI..??
 Java makes RMI (Remote Method Invocation) fairly easy, but there are some
extra steps
 To send a message to a remote “server object,”
 The “client object” has to find the object
Do this by looking it up in a registry
 The client object then has to marshal the parameters (prepare them for
transmission)
Java requires Serializable parameters
The server object has to unmarshal its parameters, do its computation, and
marshal its response
 The client object has to unmarshal the response
 Much of this is done for you by special software
GENERAL FUNCTIONING DIAGRAM
 RMI provides for remote communication between programs written
in the JAVA.
RMI ARCHITECTURE
The complete RMI System is divided in 4 layers:
1. Application Layer
2. Proxy Layer
3. Remote Reference Layer
4. Transport Layer
1. Application Layer : It’s responsible for the actual logic (implementation) of the
client and server applications. Generally at the server side class contain
implementation logic and also apply the reference to the appropriate object as per
per the requirement of the logic in application.
2. Proxy Layer : It’s also called the “Stub/Skeleton Layer”. A Stub class is a client side
proxy handles the remote objects which are getting from the reference. A Skeleton
Skeleton class is a server side proxy that set the reference to the objects which are
are communicating with the Stub.
3. Transport Layer : It’s also called the “ Connection Layer”. It is responsible for
managing the existing connections and also setting up new connections. So it works
works like a link between the RRL on the client side and the RRL on the server side.
server side.
4. Remote Reference Layer(RRL) : It is responsible for managing the references made
by the client to the remote object on the server so it is available on both JVM(Client
JVM(Client and Server). The Client side RRL receives the request for methods from
methods from the tub that is transferred into byte stream process called serialization
serialization (Marshalling) and then these data are send to the server side RRL.
RRL.
The server side RRL doing reverse process and convert the binary data into object.
object. This process is called deserialization or unmarshalling and then sent to the
to the Skeleton class.
RMI COMPONENTS
The RMI application contains three components:
1. RMI Server
2. RMI Client
3. RMI Registry
RMI SERVER
 RMI Server contains objects whose methods are to be called remotely. It
creates remote objects and applies the reference to these objects in the
Registry, after that the Registry registers these objects who are going to be
called by client remotely.
RMI CLIENT
 The RMI Client gets the reference of one or more remote objects from the
Registry with the help of object name. It can invoke methods on the
remote object to access the services of the object as per the requirement of
logic in RMI application.
 Once the client gets the reference of remote object, the methods in the
remote object are invoked just like as the methods of a local object.
RMI REGISTRY
 In the Server side of the reference of the object (which is invoked
remotely) is applied and after that this reference is set in the RMI registry.
 When the client call the method on this object, its not directly call but it is
a call by the reference which is already set in the Registry so it first gets the
object from this reference which is available at RMI Registry then after
calls the methods as per the requirement of logic in RMI application.
SIMLAR TECHNOLOGY
 CORBA (Common Object Request Broker Architecture) has long been
king
 CORBA supports object transmission between virtually any languages
 Objects have to be described in IDL (Interface Definition Language),
which looks a lot like C++ data definitions
 CORBA is complex and flaky
 Microsoft supported CORBA, then COM, now .NET
THE FUTURE OF RMI
 Now that it is part of JDK1.1, it is highly unlikely that it will be removed at
a later date.
 According to Sun, RMI has not been (and will not be) replaced by Corba
and IIOP.
 According to Java Soft, RMI will be extended in the future with the ability
to use IIOP as a transport protocol.
REFERENCES
 https://www.cis.upenn.edu/~matuszek/cit597-2003/Lectures/32-rmi.
 www.eng.auburn.edu/center/irsc/comp0690/rmi.
 www.javatpoint.com/RMI.
 https://docs.oracle.com/javase/tutorial/rmi.
THANK YOU

More Related Content

What's hot

Polymorphism in java, method overloading and method overriding
Polymorphism in java,  method overloading and method overridingPolymorphism in java,  method overloading and method overriding
Polymorphism in java, method overloading and method overridingJavaTportal
 
Design patterns ppt
Design patterns pptDesign patterns ppt
Design patterns pptAman Jain
 
Servlet and servlet life cycle
Servlet and servlet life cycleServlet and servlet life cycle
Servlet and servlet life cycleDhruvin Nakrani
 
Java RMI Presentation
Java RMI PresentationJava RMI Presentation
Java RMI PresentationMasud Rahman
 
Introduction to Design Pattern
Introduction to Design  PatternIntroduction to Design  Pattern
Introduction to Design PatternSanae BEKKAR
 
JDBC: java DataBase connectivity
JDBC: java DataBase connectivityJDBC: java DataBase connectivity
JDBC: java DataBase connectivityTanmoy Barman
 
Directory and discovery services
Directory and discovery servicesDirectory and discovery services
Directory and discovery servicesRamchandraRegmi
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure callSunita Sahu
 
Network programming in Java
Network programming in JavaNetwork programming in Java
Network programming in JavaTushar B Kute
 
Java awt (abstract window toolkit)
Java awt (abstract window toolkit)Java awt (abstract window toolkit)
Java awt (abstract window toolkit)Elizabeth alexander
 
Remote Procedure Call in Distributed System
Remote Procedure Call in Distributed SystemRemote Procedure Call in Distributed System
Remote Procedure Call in Distributed SystemPoojaBele1
 
Factory Design Pattern
Factory Design PatternFactory Design Pattern
Factory Design PatternKanushka Gayan
 
Inheritance in java
Inheritance in javaInheritance in java
Inheritance in javaTech_MX
 
MULTI THREADING IN JAVA
MULTI THREADING IN JAVAMULTI THREADING IN JAVA
MULTI THREADING IN JAVAVINOTH R
 

What's hot (20)

Polymorphism in java, method overloading and method overriding
Polymorphism in java,  method overloading and method overridingPolymorphism in java,  method overloading and method overriding
Polymorphism in java, method overloading and method overriding
 
Design patterns ppt
Design patterns pptDesign patterns ppt
Design patterns ppt
 
Servlet and servlet life cycle
Servlet and servlet life cycleServlet and servlet life cycle
Servlet and servlet life cycle
 
Adapter pattern
Adapter patternAdapter pattern
Adapter pattern
 
Java RMI Presentation
Java RMI PresentationJava RMI Presentation
Java RMI Presentation
 
Introduction to Design Pattern
Introduction to Design  PatternIntroduction to Design  Pattern
Introduction to Design Pattern
 
JDBC: java DataBase connectivity
JDBC: java DataBase connectivityJDBC: java DataBase connectivity
JDBC: java DataBase connectivity
 
Directory and discovery services
Directory and discovery servicesDirectory and discovery services
Directory and discovery services
 
OOP java
OOP javaOOP java
OOP java
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure call
 
Servlet life cycle
Servlet life cycleServlet life cycle
Servlet life cycle
 
RMI
RMIRMI
RMI
 
Servlets
ServletsServlets
Servlets
 
Network programming in Java
Network programming in JavaNetwork programming in Java
Network programming in Java
 
Java awt (abstract window toolkit)
Java awt (abstract window toolkit)Java awt (abstract window toolkit)
Java awt (abstract window toolkit)
 
Remote Procedure Call in Distributed System
Remote Procedure Call in Distributed SystemRemote Procedure Call in Distributed System
Remote Procedure Call in Distributed System
 
Factory Design Pattern
Factory Design PatternFactory Design Pattern
Factory Design Pattern
 
Inheritance in java
Inheritance in javaInheritance in java
Inheritance in java
 
MULTI THREADING IN JAVA
MULTI THREADING IN JAVAMULTI THREADING IN JAVA
MULTI THREADING IN JAVA
 
Interface in java
Interface in javaInterface in java
Interface in java
 

Similar to Remote Method Innovation (RMI) In JAVA

Similar to Remote Method Innovation (RMI) In JAVA (20)

Javarmi 130925082348-phpapp01
Javarmi 130925082348-phpapp01Javarmi 130925082348-phpapp01
Javarmi 130925082348-phpapp01
 
Module 3 remote method invocation-2
Module 3   remote method  invocation-2Module 3   remote method  invocation-2
Module 3 remote method invocation-2
 
Java RMI Detailed Tutorial
Java RMI Detailed TutorialJava RMI Detailed Tutorial
Java RMI Detailed Tutorial
 
Remote method invocation
Remote method invocationRemote method invocation
Remote method invocation
 
Oracle docs rmi applications
Oracle docs rmi applicationsOracle docs rmi applications
Oracle docs rmi applications
 
Rmi
RmiRmi
Rmi
 
Java RMI(Remote Method Invocation)
Java RMI(Remote Method Invocation)Java RMI(Remote Method Invocation)
Java RMI(Remote Method Invocation)
 
Report on mini project(Student database handling using RMI)
Report on mini project(Student database handling using RMI)Report on mini project(Student database handling using RMI)
Report on mini project(Student database handling using RMI)
 
Remote method invocatiom
Remote method invocatiomRemote method invocatiom
Remote method invocatiom
 
Remote method invocation
Remote method invocationRemote method invocation
Remote method invocation
 
Java rmi tutorial
Java rmi tutorialJava rmi tutorial
Java rmi tutorial
 
Remote Method Invocation
Remote Method InvocationRemote Method Invocation
Remote Method Invocation
 
MIDELWARE TECH
MIDELWARE TECHMIDELWARE TECH
MIDELWARE TECH
 
Remote Method Invocation
Remote Method InvocationRemote Method Invocation
Remote Method Invocation
 
Java rmi
Java rmiJava rmi
Java rmi
 
Rmi
RmiRmi
Rmi
 
DS
DSDS
DS
 
Remote Method Invocation in JAVA
Remote Method Invocation in JAVARemote Method Invocation in JAVA
Remote Method Invocation in JAVA
 
RMI (Remote Method Invocation)
RMI (Remote Method Invocation)RMI (Remote Method Invocation)
RMI (Remote Method Invocation)
 
6. The grid-COMPUTING OGSA and WSRF
6. The grid-COMPUTING OGSA and WSRF6. The grid-COMPUTING OGSA and WSRF
6. The grid-COMPUTING OGSA and WSRF
 

More from Prankit Mishra

Tourist management system using .NET
Tourist management system using .NETTourist management system using .NET
Tourist management system using .NETPrankit Mishra
 
Fog computing : The new age Technology
Fog computing : The new age TechnologyFog computing : The new age Technology
Fog computing : The new age TechnologyPrankit Mishra
 
Distributed operating system
Distributed operating systemDistributed operating system
Distributed operating systemPrankit Mishra
 
Ajanta and Ellora Caves
Ajanta and Ellora CavesAjanta and Ellora Caves
Ajanta and Ellora CavesPrankit Mishra
 
Probability In Discrete Structure of Computer Science
Probability In Discrete Structure of Computer ScienceProbability In Discrete Structure of Computer Science
Probability In Discrete Structure of Computer SciencePrankit Mishra
 
Cryptography using probability
Cryptography using probabilityCryptography using probability
Cryptography using probabilityPrankit Mishra
 
Bipolar Junction Transistor
Bipolar Junction TransistorBipolar Junction Transistor
Bipolar Junction TransistorPrankit Mishra
 
Forward error correction
Forward error correctionForward error correction
Forward error correctionPrankit Mishra
 

More from Prankit Mishra (11)

Tourist management system using .NET
Tourist management system using .NETTourist management system using .NET
Tourist management system using .NET
 
Fog computing : The new age Technology
Fog computing : The new age TechnologyFog computing : The new age Technology
Fog computing : The new age Technology
 
Distributed operating system
Distributed operating systemDistributed operating system
Distributed operating system
 
Ajanta and Ellora Caves
Ajanta and Ellora CavesAjanta and Ellora Caves
Ajanta and Ellora Caves
 
Probability In Discrete Structure of Computer Science
Probability In Discrete Structure of Computer ScienceProbability In Discrete Structure of Computer Science
Probability In Discrete Structure of Computer Science
 
Cryptography using probability
Cryptography using probabilityCryptography using probability
Cryptography using probability
 
Bipolar Junction Transistor
Bipolar Junction TransistorBipolar Junction Transistor
Bipolar Junction Transistor
 
Autotransformers
AutotransformersAutotransformers
Autotransformers
 
Top down parsing
Top down parsingTop down parsing
Top down parsing
 
Forward error correction
Forward error correctionForward error correction
Forward error correction
 
DDR SDRAMs
DDR SDRAMsDDR SDRAMs
DDR SDRAMs
 

Recently uploaded

Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxKartikeyaDwivedi3
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .Satyam Kumar
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 

Recently uploaded (20)

Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptx
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 

Remote Method Innovation (RMI) In JAVA

  • 1. JAVA – REMOTE METHOD INNOVATION MADE BY : PRANKIT MISHRA (141CC00007) SUBMITTED TO : DR. RAKESH BHADONI
  • 2. INTRODUCTION  The Java Remote Method Invocation (Java RMI) is a Java API that performs remote method invocation, the object-oriented equivalent of remote procedure calls (RPC), with support for direct transfer of serialized Java classes and distributed garbage collection.  Usage of the term RMI may denote solely the programming interface or may signify both the API and JRMP, IIOP, or another implementation, whereas the term RMI-IIOP specifically denotes the RMI interface delegating most of the functionality to the supporting CORBA implementation.
  • 3. WHY IT IS NEEDED..??  Provide user with a “thin client “ allows good performance on lowed workstations  Run server on high end hardware maximize $ investment over many clients server remote from client  Distributed network object.
  • 4. WHAT IS NEEDED FOR RMI..??  Java makes RMI (Remote Method Invocation) fairly easy, but there are some extra steps  To send a message to a remote “server object,”  The “client object” has to find the object Do this by looking it up in a registry  The client object then has to marshal the parameters (prepare them for transmission) Java requires Serializable parameters The server object has to unmarshal its parameters, do its computation, and marshal its response  The client object has to unmarshal the response  Much of this is done for you by special software
  • 5. GENERAL FUNCTIONING DIAGRAM  RMI provides for remote communication between programs written in the JAVA.
  • 6. RMI ARCHITECTURE The complete RMI System is divided in 4 layers: 1. Application Layer 2. Proxy Layer 3. Remote Reference Layer 4. Transport Layer
  • 7.
  • 8. 1. Application Layer : It’s responsible for the actual logic (implementation) of the client and server applications. Generally at the server side class contain implementation logic and also apply the reference to the appropriate object as per per the requirement of the logic in application. 2. Proxy Layer : It’s also called the “Stub/Skeleton Layer”. A Stub class is a client side proxy handles the remote objects which are getting from the reference. A Skeleton Skeleton class is a server side proxy that set the reference to the objects which are are communicating with the Stub. 3. Transport Layer : It’s also called the “ Connection Layer”. It is responsible for managing the existing connections and also setting up new connections. So it works works like a link between the RRL on the client side and the RRL on the server side. server side.
  • 9. 4. Remote Reference Layer(RRL) : It is responsible for managing the references made by the client to the remote object on the server so it is available on both JVM(Client JVM(Client and Server). The Client side RRL receives the request for methods from methods from the tub that is transferred into byte stream process called serialization serialization (Marshalling) and then these data are send to the server side RRL. RRL. The server side RRL doing reverse process and convert the binary data into object. object. This process is called deserialization or unmarshalling and then sent to the to the Skeleton class.
  • 10. RMI COMPONENTS The RMI application contains three components: 1. RMI Server 2. RMI Client 3. RMI Registry
  • 11.
  • 12. RMI SERVER  RMI Server contains objects whose methods are to be called remotely. It creates remote objects and applies the reference to these objects in the Registry, after that the Registry registers these objects who are going to be called by client remotely.
  • 13. RMI CLIENT  The RMI Client gets the reference of one or more remote objects from the Registry with the help of object name. It can invoke methods on the remote object to access the services of the object as per the requirement of logic in RMI application.  Once the client gets the reference of remote object, the methods in the remote object are invoked just like as the methods of a local object.
  • 14. RMI REGISTRY  In the Server side of the reference of the object (which is invoked remotely) is applied and after that this reference is set in the RMI registry.  When the client call the method on this object, its not directly call but it is a call by the reference which is already set in the Registry so it first gets the object from this reference which is available at RMI Registry then after calls the methods as per the requirement of logic in RMI application.
  • 15. SIMLAR TECHNOLOGY  CORBA (Common Object Request Broker Architecture) has long been king  CORBA supports object transmission between virtually any languages  Objects have to be described in IDL (Interface Definition Language), which looks a lot like C++ data definitions  CORBA is complex and flaky  Microsoft supported CORBA, then COM, now .NET
  • 16. THE FUTURE OF RMI  Now that it is part of JDK1.1, it is highly unlikely that it will be removed at a later date.  According to Sun, RMI has not been (and will not be) replaced by Corba and IIOP.  According to Java Soft, RMI will be extended in the future with the ability to use IIOP as a transport protocol.