SlideShare a Scribd company logo
1 of 15
Download to read offline
Distributed Computing
        in Java


               tnngo2@gmail.com
A java application can only invoke the methods of
the classes available inside its JVM
Distributed Computing

    Distributed System
         consists of multiple autonomous computers that
         communicate through a computer network to
         achieve a common goal.
Distributed Computing revolves around
client-server technology where several client
programs communicate with one or more server
applications
Remote Method Invocation (RMI) allows a Java
program running inside a JVM to execute a
method of a class available in another JVM
Why don’t use Socket instead of RMI?
Why don’t use Socket instead of RMI?
    Because
          RMI allows to serialize and transmit
          objects

                                      #serialize
RMI Architecture
     the definition of behavior and the implementation of that
     behavior are separate concepts

            => put it on separate JVMs
RMI Architecture
     Clients are concerned about the definition of a service
     Servers are focused on providing the service
RMI Architecture
Stub and Skeleton Layer
     Proxy design pattern
Stub and Skeleton Layer
     Marshaling and Unmarshaling data
     Transmitting and receiving data to and
from the Remote Reference Layer

                           #Marshaling #Unmarshaling
Remote Reference Layer
    defines and supports the invocation
    semantics of the RMI connection.

    converts client request into low-level RMI
    transport request and forwards it to
    transport layer
Transport Protocol Layer
     makes the connection between JVMs.
     setting up connection using Sockets.
     listens for incoming calls
     manages requests from reference layer.
Components of RMI application:
     Remote Interface
     Implementation class
     Stub
     Skeleton

More Related Content

What's hot

Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
helpsoft01
 
WCF, EF, Katmanlı Model
WCF, EF, Katmanlı ModelWCF, EF, Katmanlı Model
WCF, EF, Katmanlı Model
zenithbilisim
 

What's hot (20)

Java rmi tutorial
Java rmi tutorialJava rmi tutorial
Java rmi tutorial
 
Java RMI Detailed Tutorial
Java RMI Detailed TutorialJava RMI Detailed Tutorial
Java RMI Detailed Tutorial
 
WebSphere Message Broker In Shared Runtime Environments
WebSphere Message Broker In Shared Runtime EnvironmentsWebSphere Message Broker In Shared Runtime Environments
WebSphere Message Broker In Shared Runtime Environments
 
Rmi
RmiRmi
Rmi
 
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
Comparison between-rpc-rmi-and-webservices-son-1228374226080667-8
 
IBM MQ Overview (IBM Message Queue)
IBM MQ Overview (IBM Message Queue)IBM MQ Overview (IBM Message Queue)
IBM MQ Overview (IBM Message Queue)
 
Distributed objects
Distributed objectsDistributed objects
Distributed objects
 
OMG CORBA Component Model tutorial
OMG CORBA Component Model tutorialOMG CORBA Component Model tutorial
OMG CORBA Component Model tutorial
 
Rmi architecture
Rmi architectureRmi architecture
Rmi architecture
 
Rmi ppt
Rmi pptRmi ppt
Rmi ppt
 
Rmi presentation
Rmi presentationRmi presentation
Rmi presentation
 
Remote Method Invocation
Remote Method InvocationRemote Method Invocation
Remote Method Invocation
 
Remote Method Innovation (RMI) In JAVA
Remote Method Innovation (RMI) In JAVARemote Method Innovation (RMI) In JAVA
Remote Method Innovation (RMI) In JAVA
 
Java rmi
Java rmiJava rmi
Java rmi
 
Remote Method Invocation
Remote Method InvocationRemote Method Invocation
Remote Method Invocation
 
Remote Method Invocation (Java RMI)
Remote Method Invocation (Java RMI)Remote Method Invocation (Java RMI)
Remote Method Invocation (Java RMI)
 
Amdatu - ApacheCon NA 2011
Amdatu - ApacheCon NA 2011Amdatu - ApacheCon NA 2011
Amdatu - ApacheCon NA 2011
 
Jms session (1)
Jms session (1)Jms session (1)
Jms session (1)
 
C++ N Pv2
C++ N Pv2C++ N Pv2
C++ N Pv2
 
WCF, EF, Katmanlı Model
WCF, EF, Katmanlı ModelWCF, EF, Katmanlı Model
WCF, EF, Katmanlı Model
 

Viewers also liked

Механизмы нервной и гуморальной регуляции сна
Механизмы нервной и гуморальной регуляции снаМеханизмы нервной и гуморальной регуляции сна
Механизмы нервной и гуморальной регуляции сна
crasgmu
 
Elements, Compounds & Mixtures - Day 1
Elements, Compounds & Mixtures - Day 1Elements, Compounds & Mixtures - Day 1
Elements, Compounds & Mixtures - Day 1
jmori1
 
Keunggulan kepimpinan rasulullah saw
Keunggulan kepimpinan rasulullah sawKeunggulan kepimpinan rasulullah saw
Keunggulan kepimpinan rasulullah saw
mohamad fairuz
 
Cells homeostasis_and_disease
Cells  homeostasis_and_diseaseCells  homeostasis_and_disease
Cells homeostasis_and_disease
llVictorGmll
 
Строение и функции вомероназального органа
Строение и функции вомероназального органаСтроение и функции вомероназального органа
Строение и функции вомероназального органа
crasgmu
 
Historical monograph
Historical monographHistorical monograph
Historical monograph
ashleighalece
 
Evaluation Question 3
Evaluation Question 3Evaluation Question 3
Evaluation Question 3
Sammi Wilde
 

Viewers also liked (20)

Механизмы нервной и гуморальной регуляции сна
Механизмы нервной и гуморальной регуляции снаМеханизмы нервной и гуморальной регуляции сна
Механизмы нервной и гуморальной регуляции сна
 
Pres pmi2012 surface_grinding_model_v2
Pres pmi2012 surface_grinding_model_v2Pres pmi2012 surface_grinding_model_v2
Pres pmi2012 surface_grinding_model_v2
 
Market Update
Market UpdateMarket Update
Market Update
 
Elements, Compounds & Mixtures - Day 1
Elements, Compounds & Mixtures - Day 1Elements, Compounds & Mixtures - Day 1
Elements, Compounds & Mixtures - Day 1
 
Treecrm
TreecrmTreecrm
Treecrm
 
2012 Kick Start Social Media & Mobile App Marketing
2012 Kick Start Social Media & Mobile App Marketing2012 Kick Start Social Media & Mobile App Marketing
2012 Kick Start Social Media & Mobile App Marketing
 
Keunggulan kepimpinan rasulullah saw
Keunggulan kepimpinan rasulullah sawKeunggulan kepimpinan rasulullah saw
Keunggulan kepimpinan rasulullah saw
 
Kudavi 2.4.2016
Kudavi 2.4.2016Kudavi 2.4.2016
Kudavi 2.4.2016
 
Cells homeostasis_and_disease
Cells  homeostasis_and_diseaseCells  homeostasis_and_disease
Cells homeostasis_and_disease
 
Развитие финансового сектора Казахстана в посткризисный период
Развитие финансового сектора Казахстана в посткризисный периодРазвитие финансового сектора Казахстана в посткризисный период
Развитие финансового сектора Казахстана в посткризисный период
 
C1320prespost
C1320prespostC1320prespost
C1320prespost
 
Cancion drowp the worl
Cancion drowp the worlCancion drowp the worl
Cancion drowp the worl
 
Строение и функции вомероназального органа
Строение и функции вомероназального органаСтроение и функции вомероназального органа
Строение и функции вомероназального органа
 
Historical monograph
Historical monographHistorical monograph
Historical monograph
 
Bpel4 Ws 1.1 To Ws Bpel 2.0
Bpel4 Ws 1.1 To Ws Bpel 2.0Bpel4 Ws 1.1 To Ws Bpel 2.0
Bpel4 Ws 1.1 To Ws Bpel 2.0
 
Openstorage Openstack
Openstorage OpenstackOpenstorage Openstack
Openstorage Openstack
 
All in one
All in oneAll in one
All in one
 
Evaluation Question 3
Evaluation Question 3Evaluation Question 3
Evaluation Question 3
 
Issue 6 February 2011
Issue 6 February 2011Issue 6 February 2011
Issue 6 February 2011
 
Betiad
BetiadBetiad
Betiad
 

Similar to Rmi

Distributed Programming using RMI
 Distributed Programming using RMI Distributed Programming using RMI
Distributed Programming using RMI
backdoor
 
Distributed Programming using RMI
Distributed Programming using RMIDistributed Programming using RMI
Distributed Programming using RMI
backdoor
 
Remote method invocation
Remote  method invocationRemote  method invocation
Remote method invocation
DEEPIKA T
 

Similar to Rmi (20)

Oracle docs rmi applications
Oracle docs rmi applicationsOracle docs rmi applications
Oracle docs rmi applications
 
DS
DSDS
DS
 
Javarmi 130925082348-phpapp01
Javarmi 130925082348-phpapp01Javarmi 130925082348-phpapp01
Javarmi 130925082348-phpapp01
 
Rmi
RmiRmi
Rmi
 
Distributed Programming using RMI
 Distributed Programming using RMI Distributed Programming using RMI
Distributed Programming using RMI
 
Distributed Programming using RMI
Distributed Programming using RMIDistributed Programming using RMI
Distributed Programming using RMI
 
Remote method invocation
Remote method invocationRemote method invocation
Remote method invocation
 
Java RMI
Java RMIJava RMI
Java RMI
 
Remote method invocatiom
Remote method invocatiomRemote method invocatiom
Remote method invocatiom
 
Module 3 remote method invocation-2
Module 3   remote method  invocation-2Module 3   remote method  invocation-2
Module 3 remote method invocation-2
 
DS R16 - UNIT-3.pdf
DS R16 - UNIT-3.pdfDS R16 - UNIT-3.pdf
DS R16 - UNIT-3.pdf
 
Basic java
Basic java Basic java
Basic java
 
Java interview questions for freshers
Java interview questions for freshersJava interview questions for freshers
Java interview questions for freshers
 
MIDELWARE TECH
MIDELWARE TECHMIDELWARE TECH
MIDELWARE TECH
 
Remote method invocation
Remote  method invocationRemote  method invocation
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 invocation
Remote method invocationRemote method invocation
Remote method invocation
 
Rmi
RmiRmi
Rmi
 
Rmi
RmiRmi
Rmi
 
Java RMI Presentation
Java RMI PresentationJava RMI Presentation
Java RMI Presentation
 

More from Tuan Ngo

Introduction of cg program for portal 20120424 en
Introduction of cg program for portal 20120424 enIntroduction of cg program for portal 20120424 en
Introduction of cg program for portal 20120424 en
Tuan Ngo
 
Net framework
Net frameworkNet framework
Net framework
Tuan Ngo
 
15 anonymous methods, partial types and nullable types
15   anonymous methods, partial types and nullable types15   anonymous methods, partial types and nullable types
15 anonymous methods, partial types and nullable types
Tuan Ngo
 
14 generics and iterators
14   generics and iterators14   generics and iterators
14 generics and iterators
Tuan Ngo
 
13 collections
13   collections13   collections
13 collections
Tuan Ngo
 
11 exception handling
11   exception handling11   exception handling
11 exception handling
Tuan Ngo
 
12 events and delegates
12   events and delegates12   events and delegates
12 events and delegates
Tuan Ngo
 
9 properties & indexers
9   properties & indexers9   properties & indexers
9 properties & indexers
Tuan Ngo
 
10 namespace
10  namespace10  namespace
10 namespace
Tuan Ngo
 
8 abstract classes and interfaces
8   abstract classes and interfaces 8   abstract classes and interfaces
8 abstract classes and interfaces
Tuan Ngo
 
7 inheritance and polymorphism
7   inheritance and polymorphism7   inheritance and polymorphism
7 inheritance and polymorphism
Tuan Ngo
 
6 class and methods
6    class and methods6    class and methods
6 class and methods
Tuan Ngo
 
3 statements and operators
3   statements and operators3   statements and operators
3 statements and operators
Tuan Ngo
 
4 c# programming constructs
4   c# programming constructs4   c# programming constructs
4 c# programming constructs
Tuan Ngo
 
1 get started with c#
1   get started with c#1   get started with c#
1 get started with c#
Tuan Ngo
 
2 variables and data types
2   variables and data types2   variables and data types
2 variables and data types
Tuan Ngo
 

More from Tuan Ngo (20)

Introduction of cg program for portal 20120424 en
Introduction of cg program for portal 20120424 enIntroduction of cg program for portal 20120424 en
Introduction of cg program for portal 20120424 en
 
Net framework
Net frameworkNet framework
Net framework
 
15 anonymous methods, partial types and nullable types
15   anonymous methods, partial types and nullable types15   anonymous methods, partial types and nullable types
15 anonymous methods, partial types and nullable types
 
14 generics and iterators
14   generics and iterators14   generics and iterators
14 generics and iterators
 
13 collections
13   collections13   collections
13 collections
 
11 exception handling
11   exception handling11   exception handling
11 exception handling
 
12 events and delegates
12   events and delegates12   events and delegates
12 events and delegates
 
9 properties & indexers
9   properties & indexers9   properties & indexers
9 properties & indexers
 
10 namespace
10  namespace10  namespace
10 namespace
 
8 abstract classes and interfaces
8   abstract classes and interfaces 8   abstract classes and interfaces
8 abstract classes and interfaces
 
7 inheritance and polymorphism
7   inheritance and polymorphism7   inheritance and polymorphism
7 inheritance and polymorphism
 
5 arrays
5   arrays5   arrays
5 arrays
 
6 class and methods
6    class and methods6    class and methods
6 class and methods
 
3 statements and operators
3   statements and operators3   statements and operators
3 statements and operators
 
4 c# programming constructs
4   c# programming constructs4   c# programming constructs
4 c# programming constructs
 
1 get started with c#
1   get started with c#1   get started with c#
1 get started with c#
 
2 variables and data types
2   variables and data types2   variables and data types
2 variables and data types
 
Jdbc 7
Jdbc 7Jdbc 7
Jdbc 7
 
Jdbc 6
Jdbc 6Jdbc 6
Jdbc 6
 
Jdbc 3
Jdbc 3Jdbc 3
Jdbc 3
 

Recently uploaded

Recently uploaded (20)

Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

Rmi

  • 1. Distributed Computing in Java tnngo2@gmail.com
  • 2. A java application can only invoke the methods of the classes available inside its JVM
  • 3. Distributed Computing Distributed System consists of multiple autonomous computers that communicate through a computer network to achieve a common goal.
  • 4. Distributed Computing revolves around client-server technology where several client programs communicate with one or more server applications
  • 5. Remote Method Invocation (RMI) allows a Java program running inside a JVM to execute a method of a class available in another JVM
  • 6. Why don’t use Socket instead of RMI?
  • 7. Why don’t use Socket instead of RMI? Because RMI allows to serialize and transmit objects #serialize
  • 8. RMI Architecture the definition of behavior and the implementation of that behavior are separate concepts => put it on separate JVMs
  • 9. RMI Architecture Clients are concerned about the definition of a service Servers are focused on providing the service
  • 11. Stub and Skeleton Layer Proxy design pattern
  • 12. Stub and Skeleton Layer Marshaling and Unmarshaling data Transmitting and receiving data to and from the Remote Reference Layer #Marshaling #Unmarshaling
  • 13. Remote Reference Layer defines and supports the invocation semantics of the RMI connection. converts client request into low-level RMI transport request and forwards it to transport layer
  • 14. Transport Protocol Layer makes the connection between JVMs. setting up connection using Sockets. listens for incoming calls manages requests from reference layer.
  • 15. Components of RMI application: Remote Interface Implementation class Stub Skeleton