9
Remote Procedure Call (RPC) Client calls a procedure implemented and executing on a remote computer Call as if it was a local procedure RPC is designed providing a common interface between applications. RPC serves as a go between for client/server communications. RPC is designed to make client/server interaction easier and safer by factoring out co security, synchronization, and data flow handling, into a common library so that develo dedicate the time and effort into developing their own solutions Explain the difference between RPC and RMI. RMI: The remote objects are accessed by the references Implements object to object implementation among different java objects to implement distributed commu - RMI passes the objects as parameters to remote methods. - RMI invokes the remote methods from the objects RPC: The process is through methods / functions Proxy server is involved in processing the procedure calls Calls a procedure remotely like invoking the methods The remoteness is not exactly transparent to the client RMI - Difference between RPC and RMI - Aug 16, 2009 at 13:10 pm by Amit Satpute RPC can be used to invoke functions through a proxy functions. RMI can used to invoke methods of an object.

ملخص مادة رحماوى

  • Upload
    -

  • View
    62

  • Download
    0

Embed Size (px)

Citation preview

Remote Procedure Call (RPC) Client calls a procedure implemented and executing on a remote computer Call as if it was a local procedure

RPC is designed providing a common interface between applications. RPC serves as a gobetween for client/server communications. RPC is designed to make client/server interaction easier and safer by factoring out common tasks, such as security, synchronization, and data flow handling, into a common library so that developers do not have to dedicate the time and effort into developing their own solutions

Explain the difference between RPC and RMI.RMI:

The remote objects are accessed by the references Implements object to object implementation among different java objects to implement distributed communication model. - RMI passes the objects as parameters to remote methods. - RMI invokes the remote methods from the objects

RPC:

The process is through methods / functions Proxy server is involved in processing the procedure calls Calls a procedure remotely like invoking the methods The remoteness is not exactly transparent to the client

RMI - Difference between RPC and RMI - Aug 16, 2009 at 13:10 pm by Amit Satpute RPC can be used to invoke functions through a proxy functions. RMI can used to invoke methods of an object.

Processes

For RMI, you need to be running three processes

The Client The Server The Object Registry, rmiregistry, which is like a DNS service for objects

You also need TCP/IP active

Support for the interface

Explain the difference levels of transparency offered by RPC and RMI.RMI:

The remote objects are accessed by the references Implements object to object implementation among different java objects to implement distributed communication model. - RMI passes the objects as parameters to remote methods. - RMI invokes the remote methods from the objects

RPC:

The process is through methods / functions Proxy server is involved in processing the procedure calls Calls a procedure remotely like invoking the methods The remoteness is not exactly transparent to the client

RPC can be used to invoke functions through a proxy functions. RMI can used to invoke methods of an object.

Briefly describe the similarities and differences between RPC and RMI. (3)

Similarities:Both RPC and RMI follow the call/return style, where communication is initiated

by the client, and the server reactively responds. Both RPC and RMI provide communication via local stubs, which support an interface for method calling. In RPC and RMI calling and returning is implemented via message passing. Both use separate mechanisms for dynamic binding (e.g., object registry, JINI). Differences: Unlike RPC, RMI does not hide the distribution in the language. The remote objects are declared as remote. Unlike RPC stubs, RMI stubs need not be compiled into the client. They can be downloaded at runtime. In RMI, Marshalling is simplified as the arguments are passed by value only. The JVMs in Java take care of hiding the platform dependencies. RPC was designed to support communication among different languages, whereas existing implementations of RMI use the same language at both the ends RMI RMI RMI Server Object Method

bind RMI . RMI RMI Client ( ) Registry Stub ( Remote reference ) return . RMI RMI RMI Middleware CORBA . .. Socket Low-level . .

RMI . JVM methods ( ) Middleware RMI SUN( ) . RMI RPC,ORB,Queue,Web Services CORBA: RMI .

== ) (

CORBA () method-call ( ). . 1.0 0990

Interface Definition Language IDL CORBA . outside world IDL mapping standard mapping . ++ C implementation Smalltalk Lisp ++ C C Ada non-standard . Python PL/L COBOL Ruby Visual Basic Perl mapping ORBs Object Request Tcl Erlang . Brokers ORB ORB . Object Adapter . ..

instances Object Adapter .generated code classes Generated Code Classes IDL . . . IDL ++ C . IDL-Java Mapping Exception Mapping ( ) C-mapping .Handling GNOME UI system Red Hat Linux . ( RPC semantics ) DBus IPC IDL code IDL IDL compiler . . code .

Exceptions : : . communication timeouts local ) Portable Object Adapter (POA Server . servers servants

: name semantics .) ( transactions

== == ) CORBA Component Model (CCM

. ) CORBA Component Model (CCM CORBA framework 3 CORBA ) Enterprise Java Beans (EJB .Component 2 components EJB entities . EJB . ports . component container CCM . . authentication . components (General InterORB Protocol(GIOP InterORB -5-2 . ORB GIOP : GIOP . OMG )Internet InterORB Protocol (IIOP GIOP * GIOP.TCP/IP layer )SSL InterORB Protocol (SSLIOP IIOP SSL encryption * .Authentication )HyperText InterORB Protocol (HTIOP IIOP HTTP * .

... . .

. CORBA IDL .. . . . . . SUN Java SDK . . Firewalls IIOP TCP/IP client firewall transparent proxy server HTTP connections 80 HTTP CONNECT method .SOCKS connections port ports ORBs . web services CORBA XML/SOAP 80 . SSL port . ORBS JacORB TAO GIOP callback communication polling approach . CORBA-friendly firewalls . compression ( ) . IONA/Remedy IT/Telefonica ZIOP OMG . .threads- #C ..Net

DCOM EJB Web Services