ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Remote Method Invocation


Enviado por   •  13 de Mayo de 2014  •  496 Palabras (2 Páginas)  •  367 Visitas

Página 1 de 2

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE CÓMPUTO

Calculadora básica con RMI

Alumno:

Gómez Marbán Israel

José Asunción Enriquez Zárate

Desarrollo de Sistemas Distribuidos

Grupo: 4CV1

Introducción

El mecanismo RMI (Remote Method Invocation) permite que una aplicación o applet se comunique

con objetos que residen en programas que se ejecutan en máquinas remotas. En esencia, en lugar

de crear un objeto, el programador liga el objeto remoto con un representante local, conocido como

stub. Los mensajes dirigidos al objeto remoto se envían al stub local, como si fuera el objeto real. El

stub acepta los mensajes que se le envíen, y a su vez, los envía al objeto remoto, el cual invoca sus

métodos apropiados. El resultado de la invoación de los métodos en el objeto remoto se envía de

regreso al stub local, que los remite al emisor original de la llamada. Aparte de ligar el stub con el

objeto remoto, el código escrito por el programador para comunicar con el objeto remoto es igual

al código que se utilizaría si el objeto se encontrara en una aplicación o applet local.

Desarrollo

Elaborar un ejemplo de RMI por medio de una calculadora básica en la cual se ejecuten 8

operaciones que se hallen en el registro de RMI

Se realizaron las clases:

Cliente.java

Es la encargada de solicitar el servicio registrado en el Rmi Registry

package com.escom.distribuidos.rmi.cliente;

import

import

import

import

import

java.net.MalformedURLException;

java.rmi.Naming;

java.rmi.NotBoundException;

java.rmi.RemoteException;

com.escom.distribuidos.rmi.operaciones.OperacionesInterface;

/**

*

* @author imarban

*/

public class Cliente {

public static void main(String[] args) {

OperacionesInterface operaciones;

try {

operaciones = (OperacionesInterface) Naming.lookup("rmi://local-

host/Operaciones");

System.out.println(operaciones.division(80, 5));

} catch (NotBoundException | MalformedURLException | RemoteException e)

{

}

}

}

OperacionesInterface.java

Es la interface creada para la firma de los métodos proporcionados por el servicio a registrar

package com.escom.distribuidos.rmi.operaciones;

import java.rmi.Remote;

/**

*

* @author imarban

*/

public interface OperacionesInterface extends Remote {

public float suma (float a, float b) throws java.rmi.RemoteException;

public float resta (float a, float b) throws java.rmi.RemoteException;

public float multiplicación (float a, float b) throws java.rmi.RemoteExcep-

tion;

public float division (float a, float b) throws java.rmi.RemoteException;

public double raiz (double a) throws java.rmi.RemoteException;

public double potencia (double base, double numero) throws java.rmi.Re-

moteException;

public int fibonacci (int a) throws java.rmi.RemoteException;

public int factorial (int a) throws java.rmi.RemoteException;

}

OperacionesImp.java

Es la implementación de los métodos firmados en la Interface mencionada

package com.escom.distribuidos.rmi.operaciones;

...

Descargar como (para miembros actualizados)  txt (5 Kb)  
Leer 1 página más »
Disponible sólo en Clubensayos.com