SISTEMAS DISTRIBUIDOS
|
|
|
- Jesús Castillo Valverde
- hace 10 años
- Vistas:
Transcripción
1 Sesión 5: Tema 8: Objetos Distribuidos e Invocación Remota. Java RMI SISTEMAS DISTRIBUIDOS GRADO EN INGENIERÍA INFORMÁTICA UNED
2 Introducción Índice (1/2) Modelos de programación de aplicaciones distribuidas. Extensiones de modelos clásicos: Llamada a procedimiento remoto (RPC). Invocación a métodos remotos (RMI). Basado en eventos. Hoy trataremos: La comunicaciópn entre objetos distribuidos. Diseño e implementación de RMI. Java RMI 2
3 Introducción Índice (2/2) Middleware. Capa soyware que nos proporciona: Transparencia frente a la ubicación. Protocolos de comunicación. Hardware. Sistemas Opera\vos. Lenguajes de Programación. Applications RMI, RPC and events Request reply protocol External data representation Operating System Middleware layers Interfaces. Conjunto de métodos, eventos y propiedades que expone una clase o módulo, permi\endo modificar la implementación sin afectar a los usuarios de la clase o módulo. Interfaces de servicio e Interfaces remotas. Lenguajes de definición de interfaces. 3
4 El modelo de objetos. Índice Comunicación entre objetos remotos RMI (1/8) Referencias a objetos. Interfaces. Acciones. Excepciones. throw/catch Compactación automá\ca de memoria. Objetos Distribuidos. Estado de un objeto. Estado de un sistema distribuido. Arquitectura cliente- servidor. 4
5 Índice Comunicación entre objetos remotos RMI (2/8) El modelo de objetos distribuido. Extensión del modelo de objetos. Objeto Remoto: Puede recibir invocación de métodos remotos, que son aquellas realizadas desde objetos en otros procesos. Conceptos fundamentales para este modelo: Referencia a objeto remoto. Interfaz remota. Acciones en un sistema distribuido. Compactación de memoria en un sistema distribuido. Excepciones. 5
6 Índice Comunicación entre objetos remotos RMI (3/8) Cues\ones de diseño para RMI. Semán\ca Invocación remota frente a Invocación local. Pudiera ser. Se ejecuta una vez o ninguna. Al menos una vez. Puede haberse ejecutado varias veces. Operaciones idempotentes. Máximo una vez. Se recibe o el resultado o una excepción. Usada en Java RMI. Nivel de transparencia. Invocaciones locales iguales a RMI? RMI más vulnerables a fallos y mayor latencia. Java RMI: misma sintaxis pero implementan la interfaz Remote y lanzan RemoteExcep\ons 6
7 Índice Comunicación entre objetos remotos RMI (4/8) Implementación de RMI. - Módulo de comunicación. En cada proceso cliente y servidor. - Man\enen la seman\ca de invocación. - El del servidor, en respuesta al iden\ficador de objeto remoto en la pe\ción, selecciona el distribuidor para la clase del objeto invocado, devolviendo la referencia obtenida del módulo de referencia remota. - Módulo de referencia remota. - En cada proceso será responsable de traducir las referencias entre objetos locales y remotos. - Usa una tabla de objetos remotos con los objetos remotos del proceso y los proxys locales. 7
8 Índice - SoYware RMI. Capa entre los objetos de nivel aplicación y los módulos de comunicación y referencia remota. - Proxy. Hace transparente al cliente la RMI. Comunicación entre objetos remotos RMI (5/8) - Distribuidor. Selecciona el método apropiado del esqueleto del objeto remoto. - Esqueleto. Clase que implementa los métodos de la interfaz remota. - Generación de las clases para cada proxy, distribuidor y esqueleto. - Automá\camente mediante un compilador de interfaces. 8
9 Índice Comunicación entre objetos remotos RMI (6/8) - Programas cliente y servidor. - Servidor: Distribuidores, esqueletos y clases servidoras. Inicialización en clases serv.: Al menos crear uno de los objetos remotos, y registrarlo en un enlazador. - Cliente: Proxy de cada objeto remoto al que invoque. - Métodos factoria. Las interfaces no pueden tener constructores. Los objetos remotos se crean en la seccion de inicialización o a través de metodos factoria incluidos en la interfaz remota. - El enlazador. - Servicio que facilita las referencia a objetos remotos. Servidores registran y clientes busca los objetos remotos. En Java RMIRegistry. 9
10 Índice Comunicación entre objetos remotos RMI (7/8) - Hilos del servidor. Cada ejecución de una invocación remota correrá en un hilo o hebra separada. - Ac\vación de objetos remotos. - Objeto remoto podrá estar Ác\vo o Pasivo. - Objeto pasivo: Implementación y estado empaquetado. - Proceso ac\vador: Registrár y ac\var los objetos pasivos, y controlar los objetos ac\vados. - Almacenes de objetos persistentes. - Existencia garan\zada cuando esta pasivo. Persistent Java - Contendrá grandes can\dades de objetos en disco. - Ubicación de objetos. Referencia y dirección de Objeto Remoto. - Servicio de localización. A par\r de referencias. 10
11 Índice Comunicación entre objetos remotos RMI (8/8) Compactación automá\ca de memoria. Recuperar la memoria cuando no existan referencias a un objeto local o remoto. Algoritmo distribuido basado en recuento de referencias: El servidor controla el nº de proxys existentes Si no existen puede liberar la memoria mientras no existan referencia locales. Seman\ca de invocación al menos una vez y periodos de concesión renovables por los clientes. Java RMI. Concesiones con Lease. 11
12 Eventos y No\ficaciones Índice (1/3) Objetos reaccionan de forma asincrona a no\ficaciones asociadas a eventos originados en objetos remotos. Paradigma Publica- Subscribe. Sistemas distribuidos basados en eventos: Heterogéneos. Sólo se requiere que los objetos generadores de eventos publiquen los \pos de eventos que ofrecen y que los otros objetos se subscriban a los eventos y proporciones una interfaz para recibir las no\ficaciones. Asíncronos. No\ficaciones asíncronas. Desacoplados. 12
13 Eventos y No\ficaciones Índice (2/3) Par\cipantes en no\ficación de eventos distribuida. Son: Objeto de interés. Evento. No\ficación. Suscriptor. Objetos observadores. Anunciante. Semán\ca de reparto. En función de los requisitos. Reglas para los observadores. Encaminamiento, Filtrado de no\ficaciones, patrones de eventos y buzones. 13
14 Eventos y No\ficaciones Índice (3/3) Especificación de Eventos Distribuidos de Jini Objetos involucrados: Generadores de eventos. Oyentes de eventos remotos. Eventos remotos. Agentes terceros. Interfaces y clases: RemoteEventListener. Método no\fy(remoteevent). RemoteEvent. Evento generador, \po de evento, nº de secuencia, objeto empaquetado. EventGenerator. Método register para suscriptores. Agentes Terceros. 14
15 Caso de Estudio: Índice Java RMI (1/) Extensión del modelos de objetos de Java que da soporte a objetos distribuidos. Misma sintaxis de invocación. Misma comprobación de \pos. El objeto remoto implementa la interfaz Remote. El objeto que invoca recibe RemoteExcep,ons. Entorno concurrente. Interfaces remotas en Java. Heredan de java.rmi.remote Los métodos remotos lanzan RemoteExcep\ons 15
16 Caso de Estudio: Índice Java RMI (1/) Paso de parámetros y resultados. O son \pos primi\vos o implementan la interfaz java.io.serializable. Paso de objetos remotos: referencia al objeto Paso de objetos no remotos: por valor Decarga de las clases. El código de clases pasadas por valor y de los proxys se descarga cuando es necesario. Descarga en ambos sen,dos: Servidor- > Clientes Cliente - > Servidor 16
17 Caso de Estudio: Índice Java RMI (1/) RMIregistry. Enlazador para Java RMI Uno por computador. URLs y referencias a objetos remotos. Nombre obj. Remoto: //servidor:puerto/nombreobjeto No controla todo el sistema, hay que conocer en que computador esta el objeto remoto. Clase Naming: void rebind(string nombre, Remote obj) void bind(string nombre, Remote obj) void unbind(string nombre, Remote obj) Remote lookup(string nombre) String[] list() 17
18 Caso de Estudio: Índice Java RMI (1/) Construcción de programas clientes y servidores Servidor import java.rmi.*; public class ShapeListServer{ public static void main(string args[]){ System.setSecurityManager(new RMISecurityManager()); try{ ShapeList ashapelist = new ShapeListServant(); Interfaz Remota } } Inicialización del servidor Naming.rebind("Shape List", ashapelist ); System.out.println("ShapeList server ready"); }catch(exception e) { Clase Sirviente que implementa la interfaz remota System.out.println("ShapeList server main " + e.getmessage());} Gestor de Seguridad Enlazamos la instancia del servidor a un nombre 18
19 Caso de Estudio: Índice Java RMI (1/) Construcción de programas clientes y servidores Interfaces Remotas import java.rmi.*; import java.util.vector; Heredan de Remote Lanzan excepciones RemoteExcep\on public interface Shape extends Remote { int getversion() throws RemoteException; GraphicalObject getallstate() throws RemoteException; } Argumento debe ser Serializable public interface ShapeList extends Remote { Shape newshape(graphicalobject g) throws RemoteException; Vector allshapes() throws RemoteException; int getversion() throws RemoteException; } Método Factoria 19
20 Caso de Estudio: Índice Java RMI (1/) Construcción de programas clientes y servidores Implementación de la Interfaz Remota import java.rmi.*; Heredan UnicastRemoteObject import java.rmi.server.unicastremoteobject; import java.util.vector; Implementa la Interfaz Remota public class ShapeListServant extends UnicastRemoteObject implements ShapeList { private Vector thelist; // contains the list of Shapes private int version; Lanzan excepciones RemoteExcep\on public ShapeListServant()throws RemoteException{...} public Shape newshape(graphicalobject g) throws RemoteException { version++; Shape s = new ShapeServant( g, version); thelist.addelement(s); return s; } public Vector allshapes()throws RemoteException{...} public int getversion() throws RemoteException {... } } 20
21 import java.rmi.*; import java.rmi.server.*; import java.util.vector; public class ShapeListClient{ public static void main(string args[]){ System.setSecurityManager(new RMISecurityManager()); } } Caso de Estudio: Índice Java RMI (1/) Construcción de programas clientes y servidores Cliente Gestor de Seguridad ShapeList ashapelist = null; try{ Pedimos la referencia al objeto remoto al enlazador ashapelist = (ShapeList) Naming.lookup("//bruno.ShapeList") ; Vector slist = ashapelist.allshapes(); } catch(remoteexception e) {System.out.println(e.getMessage()); }catch(exception e) {System.out.println("Client: " + e.getmessage());} Debemos tratar la excepciones RemoteExcep\on que puede lanzarnos el objeto remoto Invocamos a un método del objeto remoto 21
22 Caso de Estudio: Índice Java RMI (1/) Devolución de llamada Idea: En lugar de los clientes consultar repe,das veces al servidor, este les informará únicamente si ha ocurrido un evento. Implementación: Cliente crea objeto remoto retrollamada. Servidor proporciona método para registrar los objetos retrollamada. Lista de objetos retrollamada. Cuando se produzca evento, el servidor usará el método retrollamada de los clientes registrados. Concesiones. Registro y desregistro. 22
23 Caso de Estudio: Índice Java RMI (1/) Diseño en implementación de Java RMI - Empleo de Reflexión. - Distribuidor generico. - Proxys generados con rmic a par,r de las clases compiladas del servidor. - Cliente envía Method con argumentos y referencia al método. El distribuidor desempaqueta y ejecuta method.invoke(objeto, argumentos) con el objeto local referenciado y los argumentos recibidos. 23
24 Caso de Estudio: Índice Java RMI (1/) - Clases de Java que dan soporte a RMI. - Sirvientes ex,enden o heredan de UnicastRemoteObject. - RemoteServer presenta versiones abstractas de los métodos necesarios para los servidores remotos. - Ac,batable: clase abstracta que proporciona objetos ac,vables cuando son invocados. - RemoteObject variable con referencia al objeto remoto con los siguentes métodos: RemoteObject - equals - tostring - readobjetc, writeobject Activatable RemoteServer UnicastRemoteObject <servant class> 24
JAVA RMI (REMOTE METHOD INVOCATION)
JAVA RMI (REMOTE METHOD INVOCATION) RMI RMI (Remote Method Invocation) Mecanismo RPC de Mecanismo mediante el cual los procesos cliente y servidor en una aplicación distribuida se comunican Una aplicación
Modelo de Objetos Distribuidos
Remote Method Invocation Modelo de Objetos Distribuidos Un objeto remoto es un objeto cuyos métodos pueden ser invocados desde otra máquina virtual de java, potencialmente en un host diferente. Modelo
DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA
DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA José Luis Pastrana Brincones ([email protected]) Dpto. Lenguajes y Ciencias de la Computación. Universidad de Málaga
en otra máquina exactamente de la misma manera que si se encontrará en la misma máquina
Máquina A Máquina B Máquina C Lo ideal sería tener un sistema distribuido orientado a objetos que permita: 1)Invocar un método de un objeto que se localiza en otra máquina exactamente de la misma manera
RMI [Remote Method Invocation]
RMI [Remote Method Invocation] Cuando utilizamos sockets, hemos de preocuparnos de cómo se transmiten físicamente los datos entre los extremos de una conexión (a nivel de bytes, ya que usamos los streams
Java RMI Remote Method Invocation. Invocación Remota de Métodos en Java
Java RMI Remote Method Invocation Invocación Remota de Métodos en Java Contenido Introducción Implementación Diseño de la interfaz remota. Implementación de la interfaz remota. Obtención de las clases
1. Visión general de RMI
1. Visión general de RMI Java RMI permite al programador ejecutar métodos de objetos remotos utilizando la misma semántica que si fueran invocaciones locales (Véase Figura 1). Máquina Local (Cliente) Máquina
Llamada a métodos remotos (RMI). Curso 04/05. Tema 9. Departament d Informàtica. Universitat de València. 1. Introducción 2
Tema 9 Llamada a métodos remotos (RMI). Departament d Informàtica. Índice 1. Introducción 2 1.1. Cómo funciona RMI?.......................................... 2 2. Usando RMI 4 2.1. Fase de desarrollo:
Java RMI. Sistemas Distribuidos Rodrigo Santamaría
+ Java RMI Sistemas Distribuidos Rodrigo Santamaría RMI Java RMI 2 + RMI 3 Remote Method Invocation: middleware para que un objeto que se ejecuta en una JVM use métodos de otro objeto que se ejecuta en
Práctica 2: Java Remote Method Invocation (RMI)
Práctica 2: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es conocer un poco más sobre el paradigma de objetos remotos. La idea principal es
JAVA - Serializacíon / RMI. (C) Philippe Roose - 2004, 2005
JAVA - Serializacíon / RMI (C) Philippe Roose - 2004, 2005 Serializar objetos- concepto Desde el JDK 1.1 Serializar objetos permite de escribir un objeto en un fichero como un flujo de octets (archivo
Arquitectura Cliente/Servidor. Invocación de Métodos Remotos RMI: Remote Method Invocation. Llamadas a Métodos Remotos
Invocación de Métodos Remotos RMI: Remote Method Invocation Prof Wílmer Pereira Universidad Simón Bolívar Arquitectura Cliente/Servidor Cliente Request Reply Servidor Cómo permitir comunicación entre objetos
Sistemas Distribuidos Java RMI (Remote Method Invocation) Alberto Lafuente Mikel Larrea Dpto. ATC, UPV/EHU
Sistemas Distribuidos Java RMI (Remote Method Invocation) Alberto Lafuente Mikel Larrea Dpto. ATC, UPV/EHU Contenido Interfaz Implementación Servidor Cliente Puesta en marcha de la aplicación: Compilador
Ingeniería del Software Arquitectura Física en 3 niveles
Introducción En este laboratorio desplegaremos en 3 niveles físicos una aplicación que verifica si una cuenta y un password son correctos, basada en la que fue presentada en el laboratorio Separación entre
Java RMI. las RPC de Java. Parte I. Luis Fernando Llana Díaz. Departamento de Sistemas Informáticos y ProgramaciónUniversidad Complutense de Madrid
las RPC de Java. Parte I Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid de marzo de 006 RMI y RPC RPC: Remote Procedure Call. RMI y RPC RPC: Remote Procedure Call.
PROGRAMACION DISTRIBUIDA MobileTracker: Ejemplo de implementación con RMI
PROGRAMACION DISTRIBUIDA MobileTracker: Ejemplo de implementación con RMI Héctor Pérez 2 MobileTracker: Especificación El computador de la torre de control ejecuta el servicio Follower que registra los
SISTEMAS DISTRIBUIDOS
Sesión 6: Java RMI. Primeros pasos SISTEMAS DISTRIBUIDOS GRADO EN INGENIERÍA INFORMÁTICA UNED Índice Proyecto básico. Chat abierto. Servicios que ofrece el servidor: Escribir mensaje: escribir(mensaje)
CONTENIDO. Serialización. Carga dinamica de stubs RMI AVANZADO. Callbacks. Carga dinámica de Stubs
CONTENIDO RMI AVANZADO Carga dinamica de stubs Callbacks Carga dinámica de Stubs Para tener acceso a un objeto remoto mediante RMI, el cliente debe recibir un stub serializado y deserializarlo. El stub
Práctica 4: Java Remote Method Invocation (RMI)
Práctica 4: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción Hasta el momento hemos visto aplicaciones remotas donde un cliente utiliza un objeto remoto que ha sido publicado
Remote Method Invocation (RMI) de Java
Remote Method Invocation (RMI) de Java Concurrencia y Distribución Programación Avanzada Posgrado en Ciencia e Ingeniería de la Computación, UNAM 1. Introducción El mecanismo RMI (Remote Method Invocation)
CAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET
CAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET 3.1- ARQUITECTURA DE COMPONENTES GIS La presente tesis trata del diseño y desarrollo de una aplicación basado en el Web para servir datos geográficos
Interacción entre Aplicaciones: objetos distribuidos e invocación remota
Interacción entre Aplicaciones: objetos distribuidos e invocación remota En la anterior práctica se ha visto cómo extender la funcionalidad de un servidor web incorporando servlets que atienden peticiones
SISTEMAS DISTRIBUIDOS Profesor: José Luis Montoya Restrepo
SISTEMAS DISTRIBUIDOS Profesor: José Luis Montoya Restrepo AGENDA El modelo Cliente Servidor. Introducción a RMI Practica Cliente Servidor utilizando RMI. Modelo Cliente Servidor El modelo Cliente Servidor
Sistemas Distribuidos (Capítulo 8 de Distributed Computing de M. L. Liu)
Devoluciones de llamada en RMI (Callbacks) Sistemas Distribuidos (Capítulo 8 de Distributed Computing de M. L. Liu) Devolución de llamadas, introducción Cliente-servidor clásico servidorpasivo Tipo pull.
Java RMI. Sistemas distribuidos
Java RMI Sistemas distribuidos Entornos orientados a objetos Tendencia actual hacia sistemas compuestos por un conjunto de objetos que interactúan entre sí. Un programa solicita servicios invocando los
Middleware. Introducción: capas de middleware
Middleware ] Introducción ] Representación externa de datos y empaquetado ] Protocolos de petición respuesta ] Comunicación en grupo ] Comunicación entre objetos distribuidos ] Llamada a un procedimiento
PROGRAMACION DISTRIBUIDA
PROGRAMACION DISTRIBUIDA Ejemplo de uso de estrategias de diseño con RMI Héctor Pérez 2 Ejemplo de callback: SwiftEagle shot() setdirection() Target nearnessreport(target,observer) signal? explode() SwiftEagle
Tema 3. Objetos distribuidos
Tema 3. Objetos distribuidos SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs octubre 2008 FJRP, FMBR 2008/09 ccia SCS 3.1 Modelo de objetos distribuidos Objetivo: Extender
Práctica 5: Common Object Request Broker Architecture CORBA
Práctica 5: Common Object Request Broker Architecture CORBA Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es entender mejor el funcionamiento de CORBA (Common Object Request Broker
Práctica sobre compartición de instancias remotas.
Práctica sobre compartición de instancias remotas. Para esta práctica se ha construido un pequeño sistema cliente-servidor que permite la resolución de Sudokus entre varios jugadores. El servidor consta
FSD Práctica Invocación Remota: JavaRMI. Estudio Previo. Información
FSD Práctica Invocación Remota: JavaRMI Tipo de entrega: por grupos de prácticas Fecha límite: sesión de laboratorio Lugar: Campus Digital Comentario: No hay que entregar el estudio previo Objetivo de
Una introducción a Java RMI
Una introducción a Java RMI César Llamas Bello Estas transparencias no hubieran sido posible sin el tutorial de José M. Vidal Swearingen Engineering Center, University of South Carolina, Columbia Introducción
Benemérita Universidad Autónoma del Estado de Puebla
Benemérita Universidad Autónoma del Estado de Puebla Facultad de Cs. De la Computación Programación Concurrente y Paralela Práctica de Laboratorio No. 5 Profr: María del Carmen Cerón Garnica Alumno: Roberto
Pruebas de unidad con JUnit
Pruebas de unidad con JUnit Cuando se implementa software, resulta recomendable comprobar que el código que hemos escrito funciona correctamente. Para ello, implementamos pruebas que verifican que nuestro
Invocación de métodos remotos en Java: JAVA - RMI
Diseño Y Aplicaciones de Sistemas Distribuidos Invocación de métodos remotos en Java: JAVA - RMI Joan Vila DISCA / UPV Departament d Informàtica de Sistemes i Computadors Universitat Politècnica de València
RMI Remote Method Invocation
2 RMI Remote Method Invocation Dr. Víctor J. Sosa Sosa Introducción La invocación remota de métodos de Java es un modelo de objetos distribuidos, diseñado específicamente para ese lenguaje, por lo que
Primera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO. Raúl Gutiérrez Sánchez LAEFF - INTA [email protected].
Primera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO LAEFF - INTA [email protected] Qué es Java? Java es un lenguaje de programación orientado a objetos desarrollado por Sun
Código Fuente. Creamos en C:\ una carpeta para ubicar el código fuente del servidor. En mi caso, he creado una carpeta denominada rmi4
EL EJEMPLO El proceso servidor provoca un eco de la entrada de teclado enviada por el proceso cliente. Por sencillez, ejecutaremos tanto el servidor como el cliente en la máquina local. El sistema operativo
1. Manejo de memoria estática 2. Manejo de memoria dinámica
1. Manejo de memoria estática 2. Manejo de memoria dinámica *La administración de memoria de una computadora es una tarea fundamental debido a que la cantidad de memoria es limitada. *El sistema operativo
RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA
UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí
Remote Method Invocation (RMI) Basado en: Fundamentals of RMI. Short Course. JGuru.
Remote Method Invocation (RMI) Basado en: Fundamentals of RMI. Short Course. JGuru. 1 Paradigmas de desarrollo Desarrollo basado en protocolos Se diseña el protocolo Se elaboran los módulos para manejo
Tema 6. Reutilización de código. Programación 2015-2016. Programación - Tema 6: Reutilización de código
Tema 6 Reutilización de código Programación 2015-2016 Programación - Tema 6: Reutilización de código 1 Tema 6. Reutilización de código Modularidad. Implementación de métodos. Uso de métodos. Programación
5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI
5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI Contenidos Tutorial de Java RMI Caso de estudio: diseño e implementación de la capa modelo de MiniBank con Java RMI Arquitectura
Manual del Protocolo XML-RPC de Mensajería Negocios
Manual del Protocolo XML-RPC de Mensajería Negocios Índice de contenidos 1 INTRODUCCIÓN... 3 2 FUNCIONALIDADES DEL API DE COMUNICACIÓN XML-RPC... 4 2.1 Envío Libre... 4 2.2 Envío a Grupo de Contactos...
RMI. Aplicaciones Distribuidas
RMI Aplicaciones Distribuidas Contenido Objetos Distribuidos y RMI. Interface Remota. Clase Implementación. Referencias Remotas. Registro RMI. Paso de parámetros. Descarga dinámica de código. Desarrollo
Java en 3 horas. Ampliación de Sistemas Operativos. Rodrigo Santamaría
Java en 3 horas Ampliación de Sistemas Operativos Rodrigo Santamaría Generalidades Desarrollado por Sun Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas
Arquitectura de Aplicaciones
1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento
Práctica 5: Callbacks RMI.
Práctica 5: Callbacks RMI. Ejercicio 1. (Será realizado en la Sala de Computo) El siguiente ejercicio describe los pasos a seguir para aplicar el mecanismo Callback con Java RMI. En este ejercicio se requiere
Ejercicio 4. EJB Sesión - Sistema SGA. Java EE. Ejercicio 4. EJB Sesión Sistema SGA. Curso de Java EE
Java EE Ejercicio 4 EJB Sesión Sistema SGA Objetivo del Ejercicio El objetivo del ejercicio es agregar un EJB de Sesión a nuestro proyecto SGA (Sistema de Gestión de Alumnos), el cual desarrollaremos a
TEMA 7: Paso de Mensajes con RMI
CONTENIDO: TEMA 7: Paso de Mensajes con RMI Conceptos de Programación Distribuida Remote Method Invocation (RMI) en Java El Nivel de Resguardos La Responsable de que Todo Funcione: la interfaz El precompilador
1. Sistemas de colas de mensajes 2. Agentes móviles 3. Servicios de red 4. Espacios de objetos
Tema 9. Paradigmas Avanzados de computación distribuida 1. Sistemas de colas de mensajes 2. Agentes móviles 3. Servicios de red 4. Espacios de objetos Tema 9 Paradigmas Avanzados de Computación Distribuida
Java en 2 horas. Rodrigo Santamaría
+ Java en 2 horas Rodrigo Santamaría + Generalidades 2 Desarrollado por Sun en 1995 Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas a bytecode Gestión
EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011
EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 1. (0,75 PUNTOS) Identificad a continuación las sentencias que son ciertas, descartando
Programación Orientada a Objetos en Java
Programación Orientada a Objetos en Java Curso 2006-2007 Tema 3 Clases y Objetos Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Clases y
Universidad ORT - Arquitectura de Software. Requisitos
Requisitos Versión 1.5 (o superior) de la JDK de Java NetBeans 6.5 como IDE de desarrollo JBoss 4.2.x como Application Server Variable de entorno de Windows JAVA_HOME apuntando al directorio de instalación
Programación orientada a objetos
Repaso Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual [email protected]! Clase! Objeto! Atributo o variable de instancia! Método! Instanciar/crear un objeto!
Web Services en Java. Taller de Programación. Instituto de Computación Facultad de Ingeniería Universidad de la República
Web Services en Java Taller de Programación Instituto de Computación Facultad de Ingeniería Universidad de la República Contenido Motivación y Conceptos Funcionamiento Annotations Desarrollando una aplicación
Tema 1. Introducción a JAVA
Tema 1. Introducción a JAVA Historia Características Plataforma Java Entorno de desarrollo Ejemplo: Hola mundo Estructura general de un programa Java 1 Historia de Java (i) Surge en 1991: Sun Microsystems
Estructura de Bases de datos. Leonardo Víquez Acuña
Estructura de Bases de datos Leonardo Víquez Acuña Lenguajes de Bases de Datos Un sistema de bases de datos proporciona Un lenguaje de definición de datos para especificar el esquema de la base de datos
Curso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos
3.9 Patrón Distributed callback
3.9 Patrón Distributed callback Motivación (1) Queremos que la aplicación de administración de los termostatos Monitorize la temperatura de algunos termostatos, avisándonos si ésta baja o sube por encima
PROGRAMACION DISTRIBUIDA
PROGRAMACION DISTRIBUIDA Distribución basada en el patrón proxy-servant Héctor Pérez 2 Distribución de aplicaciones basadas en objetos Objetivo: rediseño de una aplicación orientada a objetos para ser
Sistemas de colas de mensajes
Tema 9. Paradigmas Avanzados de computación distribuida 1. Sistemas de colas de mensajes 2. Agentes móviles 3. Servicios de red 4. Espacios de objetos Sistemas de colas de mensajes Tema 9 Paradigmas Avanzados
2.1. Introducción al lenguaje Java
Bloque II. Elementos del lenguaje de programación Java 1.Introducción a los lenguajes de programación 2. Estructura de un programa 3. Datos y expresiones simples 4. Instrucciones de control 5. Entrada/salida
APELLIDOS:... NOMBRE:... GRUPO:... NÚMERO DE EXPEDIENTE:...
Cuadernillo de examen ASIGNATURA Laboratorio de Sistemas Operativos Abiertos (Java) CÓDIGO 321 CONVOCATORIA Extraordinaria de Septiembre de 2003 PLAN DE ESTUDIOS 1996 ESPECIALIDAD Sistemas CURSO 2002/2003
Programación Orientada a Objetos con Java
Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer [email protected] Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la
Objetos Distribuidos
Objetos Distribuidos Objetos Distribuidos Conceptos Estado: encapsula los datos Métodos: operaciones sobre los datos Interfaz: se utiliza para la disponibilidad de los métodos El Estado y la Interfaz se
VII.1: RMI: Remote Method Invocation
PROGRAMACION CONCURRENTE Y DISTRIBUIDA VII.1: RMI: Remote Method Invocation Posibilidades que ofrece Java para la comunicación en red: Socket,RMI y URL. 1 Sistemas distribuidos basados en middleware Client
El lenguaje de programación Java
Departament d Arquitectura de Computadors El lenguaje de programación Java Java (I) Orientado a objetos Ejecutado por una maquina virtual Independiente de la plataforma Multithreaded Orientado a la red
Componentes Distribuidos EJBs. Ing. Cesar Julio Bustacara Medina
Componentes Distribuidos EJBs Ing. Cesar Julio Bustacara Medina Introducción La Clase del Bean Contiene la lógica del Enterprise Bean. Es una clase Java pública, que implementa los métodos de negocios
Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.
Partes de un programa en Java A. Ejemplo de un Programa en Java /* class Ejemplo1 { //comienza la clase Ejemplo1. public static void main(string[] args) { // comienza el método main. JFrame miventana;
Programación Orientada a Objetos. Java: Excepciones
Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey LIDIA Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España
Nivel aplicación Interacción Cliente Servidor. ELO322: Redes de Computadores Agustín J. González
Nivel aplicación Interacción Cliente Servidor ELO322: Redes de Computadores Agustín J. González 1 Introducción Recordar que todo lo visto hasta ahora sólo se justifica por las aplicaciones a nivel aplicación.
Benemérita Universidad Autónoma del Estado de Puebla
Benemérita Universidad Autónoma del Estado de Puebla Facultad de Cs. De la Computación Programación Concurrente y Paralela Práctica de Laboratorio No. 4 Profr: María del Carmen Cerón Garnica Alumno: Roberto
Programación Orientada a Objetos en Java
Programación Orientada a Objetos en Java Curso 2006-2007 Tema 4 Herencia y Polimorfismo Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Herencia
TEMA 5. Otras arquitecturas distribuidas II. Objetos distribuidos y CORBA
TEMA 5. Otras arquitecturas distribuidas II. Objetos distribuidos y CORBA II. Objetos distribuidos y CORBA 1. Objetos Distribuidos 2. CORBA 1. Características 2. Modelo de trabajo 3. ORB 4. Arquitectura
Cliente/Servidor en Java
Cliente/Servidor en Java Grupo ARCOS Desarrollo de Aplicaciones Distribuidas Ingeniería Informática Universidad Carlos III de Madrid Contenidos 1. Introducción: 1. Paradigma cliente/servidor 2. Entorno
Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms
Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura
La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la
Servicios web Introducción Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes
Estilos de Arquitectura y. Patrones de Diseño Arquitectónico. Patrones de Arquitectura
Estilos de Arquitectura y Patrones de Diseño Arquitectónico Gastón Mousqués - AR 1 Patrones de Arquitectura Gastón Mousqués - AR 2 Principales Categorías de Patrones (Software) Patrones de Análisis Expresan
Solución Examen Junio 2007 (a) Ejercicio GeoTaxi (1h 20 min.) Diagrama de Casos de Uso y. Casos de uso (2,5 puntos) Modelo de Dominio (1,5 puntos)
Solución Examen Junio 2007 (a) Ejercicio GeoTaxi (1h 20 min.) Diagrama de Casos de Uso y Casos de uso (2,5 puntos) Modelo de Dominio (1,5 puntos) 1 Actores OPERADOR CLIENTE TAXISTA 2 Actor Cliente Identificarse
Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez [email protected]
Modelos de los sistemas distribuidos Jorge Iván Meza Martínez [email protected] Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/36 Contenidos Modelo arquitectónico
Uso de excepciones en Java
Uso de excepciones en Java En Java, cuando se produce un error en un método, se lanza un objeto Throwable. Cualquier método que haya llamado al método puede capturar la excepción y tomar las medidas que
Invocación de Métodos Remotos: prácticas de laboratorio
Invocación de Métodos Remotos: prácticas de laboratorio Coromoto León Hernández, Gara Miranda Valladares Dpto. de Estadística, Investigación Operativa y Computación Universidad de La Laguna c/astrofísico
Introducción - por qué usarlas?(1)
Excepciones en Java Introducción - por qué usarlas?(1) En el mundo de la programación hay algo que siempre ocurre: los errores en los programas. Pero qué sucede realmente después de que ha ocurrido el
Lenguajes de Programación Curso 04-05. Práctica 4. Herencia. Utilización de interfaces y clases abstractas. 1. Interfaces 1. 2. Clases abstractas 2
Objetivos Herencia. Utilización de interfaces y clases abstractas. Índice 1. Interfaces 1 2. Clases abstractas 2 3. Collections Framework 3 3.1. Collection........................................... 3
Sistemas Ubicuos 4. Descubrimiento de servicios
Sistemas Ubicuos 4. Descubrimiento de servicios Departamento de Arquitectura y Tecnología de Computadores 1 Descubrimiento de servicios 1. Introducción 2. Protocolos de descubrimiento de servicios 3. Estructura
'HVDUUROORGH$SOLFDFLRQHV FRQ-DYD50,
'HVDUUROORGH$SOLFDFLRQHV FRQ-DYD50, /DERUDWRULRGH,QJHQLHUtDGHO6RIWZDUH &RQWHQLGR Antecedentes Introducción a los Sistemas Distribuidos Sockets RPC Java RMI Características Modelo de Objetos Distribuidos
2.2.- Paradigmas de la POO
2.2.- Paradigmas de la POO Los principios propios de la orientación a objetos son: 2.2.1.- Abstracción de Datos 2.2.2.- Encapsulamiento 2.2.3.- Ocultamiento 2.2.4.- Herencia 2.2.5.- Polimorfismo Cualquier
CORBA desde Java. Diego Sevilla Ruiz Sistemas Distribuidos. 1. Introducción
CORBA desde Java Diego Sevilla Ruiz Sistemas Distribuidos Índice 1. Introducción 1 2. Primeros pasos 1 2.1. Fichero IDL................................... 1 2.2. Cliente......................................
SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características
SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA 3.1. Características La tendencia hacia el futuro es el de lograr la integración total de componentes realizados por terceras partes, para lo cual es necesario
Tecnología de objetos distribuidos y arquitectura de componentes. Índice. Bibliografía. Introducción. Tema V
Bibliografía Tema V Tecnología de objetos distribuidos y arquitectura de componentes. Szyperski, C. 1998. Component Software. Addison-Wesley. Ruiz Cortés, 1998. A. CORBA: Una visión general. http://www.lsi.us.es/~aruiz
