La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sistemas Distribuidos Lunes, 16 de enero ● Invocación remota.

Presentaciones similares


Presentación del tema: "Sistemas Distribuidos Lunes, 16 de enero ● Invocación remota."— Transcripción de la presentación:

1 Sistemas Distribuidos Lunes, 16 de enero ● Invocación remota

2 Invocación remota ● Remote Method Invocation (RMI) ● 1990s ● No confundir con Java RMI ● Comunicar procesos (RPC) o entidades de un mayor nivel de abstracción (objetos o servicios)

3 Request - Reply Request ServerClient doOperation (wait) (continuation) Reply message getRequest execute method message select object sendReply

4 Operaciones public byte[] doOperation (RemoteRef s, int operationId, byte[] arguments) sends a request message to the remote server and returns the reply. The arguments specify the remote server, the operation to be invoked and the arguments of that operation. public byte[] getRequest (); acquires a client request via the server port. public void sendReply (byte[] reply, InetAddress clientHost, int clientPort); sends the reply message reply to the client at its Internet address and port.

5 Estructura del mensaje messageType requestId remoteReference operationId arguments int (0=Request, 1= Reply) int RemoteRef int or Operation array of bytes

6 Tipos de protocolos R Request RRReply RRAAcknowledge reply Request Reply Client Server Client NameMessages sent by

7 Mensaje HTTP GET//www.dcs.qmw.ac.uk/index.htmlHTTP/ 1.1 URL or pathnamemethodHTTP versionheadersmessage body

8 Mensaje HTTP HTTP/1.1200OK resource data HTTP versionstatus codereasonheadersmessage body

9 RMI ● Extensión de RPC ● Común a RPC: ● Soportan programación con interfaces ● Construidas sobre protocolos Request-Reply ● Soportan una serie de semánticas de llamadas como at-least-once y at-most-once ● Ofrecen el mismo nivel de transparencia: emplean la misma sintaxis para llamadas locales y remotas ● (Llamadas remotas exponen la naturaleza distribuida, eg excepciones remotas)

10 Diferencias ● Con RMI, el programador puede utilizar toda la expresividad de la OOP, como el uso de objetos, clases y herencia, además de metodologías y herramientas relacionadas ● Objetos tienen identificadores únicos, tanto locales como remotos, y estas referencias pueden pasarse como parámetros, expandiendo la semántica de RMI sobre la de RPC

11 Invocación local y remota invocation remote invocation remote local invocation A B C D E F

12 Interfaces remotas interface remote m1 m2 m3 m4 m5 m6 Data implementation remoteobject { of methods

13 Instanciamiento remoto

14 El papel del proxy y el esqueleto


Descargar ppt "Sistemas Distribuidos Lunes, 16 de enero ● Invocación remota."

Presentaciones similares


Anuncios Google