JavaGroups: Grupos en Java
|
|
- Guillermo Río Guzmán
- hace 8 años
- Vistas:
Transcripción
1 dit UPM JavaGroups: Grupos en Java Alejandro Alonso DIT/UPM
2 Indice 1. Introducción 2. Interfaces de los canales 3. Bloques 4. Pilas de protocolos 5. Referencias a JGroups
3 1. Introducción a JGroups Herramientas para comunicación fiable de grupo Proporciona operaciones básicas de grupos fiables: Gestión de miembros, detección de fallos, distribución de vistas y comunicación a un miembro o a todos Los grupos tienen un nombre Se crean automáticamente al añadir el primer miembro Un miembro puede formar parte de varios grupos Los miembros pueden estar en la misma máquina, misma LAN o en una WAN
4 Ejemplo: Programa de chat sencillo Implementar un sistema de chat sencillo El texto que se escribe en una réplica se muestra en las restantes Se pueden añadir y eliminar componentes dinámicamente
5 Creación del canal public class SimpleChat { JChannel channel; String user_name=system.getproperty("user.name", "n/a"); private void start() throws Exception { channel=new JChannel(); channel.connect("chatcluster"); public static void main(string[] args) throws Exception { new SimpleChat().start();
6 Bucle básico de lectura y difusión private void start() throws Exception { channel=new JChannel(); channel.connect("chatcluster"); eventloop(); channel.close(); private void eventloop() { BufferedReader in=new BufferedReader(new InputStreamReader(System.in)); while(true) { try { System.out.print("> "); System.out.flush(); String line=in.readline().tolowercase(); if(line.startswith("quit") line.startswith("exit")) { break; line="[" + user_name + "] " + line; Message msg=new Message(null, null, line); channel.send(msg); catch(exception e) {
7 Recepción de texto y vistas public class SimpleChat extends ReceiverAdapter { private void start() throws Exception { channel=new JChannel(); channel.setreceiver(this); channel.connect("chatcluster"); eventloop(); channel.close(); public void viewaccepted(view new_view) { System.out.println("** view: " + new_view); public void receive(message msg) { System.out.println(msg.getSrc() + ": " + msg.getobject());
8 Arquitectura de JGroups Tres componentes básicos: El canal: para gestionar el grupo Bloques: facilitar la programación Pila de protocolos: implementan las propiedades de un canal Un canal se conecta a una pila El mensaje de un canal pasa por cada protocolo de la pila El canal almacena el mensaje, hasta que se lee Aplicación Bloques Canal GMS MERGE FRAG UDP Pila de protocolos Red
9 Canal Un proceso crea un canal y se conecta al mismo usando el nombre de un grupo Este nombre es la referencia a un grupo Sólo admite un cliente en un momento dado Tiene una dirección única Permite acceder a la vista del grupo Varios tipos de mensajes: mensajes, vistas, estado Comportamiento similar a sockets BSD JChannel: única implementación del canal Se puede especificar sus propiedades
10 Bloques Los bloques (building blocks) proporcionan APIs con mayor nivel de abstracción que los canales Realizan operaciones internas para este fin como: Creación y uso de canales Creación de hebras Llamadas automáticas
11 Pila de protocolos JChannel está basado en una pila de protocolos Los protocolos están ordenados Los mensajes tienen que pasar por todos los protocolos de la pila Al crear un canal se determinan los protocolos y su configuración La pila de protocolos es, normalmente, transparente al programador
12 2. Interfaces de los canales: ReceiverAdapter Base para proporcionar un estilo de uso de los canales basado en eventos (push-style) El mensaje se notifica llamando a un método proporcionado por la entidad receptora (callback) public class ReceiverAdapter implements Receiver { public void receive(message msg) { public void getstate(outputstream output) throws Exception { public void setstate(inputstream input) throws Exception { public void viewaccepted(view view) { public void suspect(address mbr) { public void block() { public void unblock() {
13 Interfaces: ReceiverAdapter Orientado a recepción de mensajes: receive: se invoca cuando se recibe un mensaje getstate: obtener el estado del grupo setstate: definir el estado del grupo Orientado a la recepción de vistas: viewaccepted: Se acepta la vista suspect: Sospecha de fallo en un miembro block: Parar el envío de mensajes unblock: Reanudar envío de mensajes
14 Clase Address Cada miembro del grupo tiene una dirección única Identifica al canal y al miembro En JChannel: dirección IP + puerto Usar como un identificador opaco, y no directamente public interface Address extends Externalizable, Comparable, Cloneable { boolean ismulticastaddress(); int compareto(object o) throws ClassCastException; boolean equals(object obj); int hashcode(); String tostring(); int size
15 3.4. Message Data is sent between members in the form of messages (org.jgroups.message). A message Mensaje can be sent by a member to a single member, or to all members of the group of which the channel is an endpoint. The structure of a message is shown in Figure 3.1, Structure of a message. No es necesario proporcionar el origen: automático Figure 3.1. Structure of a message Si el destino es null, se difunde a los miembros A message has 5 fields: Las cabeceras las proporciona la pila de protocolos Destination address The address of the receiver. If null, the message will be sent to all current group members. Message.getDest() returns the destination address of a message. Message msg=new Message(null, null, "Hello"); channel.send(msg); Source address The address of the sender. Can be left null, and will be filled in by the transport protocol (e.g. UDP) before the message is put on the network. Message.getSrc() returns the source address, ie. the address of the sender of a message. Flags
16 Vistas Formada por: ViewId y una lista de miembros Se mandan automáticamente cuando hay cambios Aunque aparece como origen el coordinador (primero de la vista) ViewId puede compararse View myview=channel.getview(); Address first=myview.getmembers().get(0); Message msg=new Message(first, null, "Hello world"); channel.send(msg);
17 Canal (Channel) public abstract class Channel{ abstract public void connect(string cluster_name) throws...; abstract public void disconnect(); abstract public void close(); abstract public boolean isconnected(); abstract public void send(address dst, Address src, Serializable obj) throws ; abstract public Object receive(long timeout) throws...; abstract public View getview(); abstract public Address getaddress(); abstract public String getname(); abstract public boolean getstate(address target, long timeout)...;...
18 Canales connect() create channel unconnected connected disconnect() close() close() closed
19 Algunos ejemplos: Envío de mensajes Enviar mensaje (multicast) Hashtable data; // any serializable data try { channel.send(null, null, data); catch(exception ex) { // handle errors Enviar mensaje al primero de la vista Address receiver; Message msg; Hashtable data; try { receiver=channel.getview().getmembers().get(0)); channel.send(receiver, null, data); catch(exception ex) { // handle errors
20 Algunos ejemplos: recibir mensajes Modelo de recibir mensaje. Se usa un listener JChannel ch=new JChannel(); ch.setreceiver(new ExtendedReceiverAdapter() { public void receive(message msg) { System.out.println("received message " + msg); public void viewaccepted(view new_view) { System.out.println("received view " + new_view); ); ch.connect("bla");
21 3. Bloques (Building Blocks) MessageDispatcher Envío síncrono. Se manda un mensaje y se espera hasta que todos o una mayoría reciban el mensaje RpcDispatcher Permite invocar métodos remotos ReplicatedHashMap Varias instancias sincronizadas de una tabla hash LockService Distributed locks
22 4. Pila de protocolos Cuando se crea un JChannel se definen sus propiedades Argumento nulo: opciones por defecto Todos los procesos de un grupo deben crear sus canales con la misma lista de propiedades. En las propiedades: Se definen los protocolos que se van a usar, que son clases Se estructuran como una pila de protocolos Los mensajes pasan por cada protocolo Se pueden definir con un fichero XML o al crear el canal Se crea la pila según el orden de las propiedades "<prop1>(arg1=val1):<prop2>(arg1=val1;arg2=val2):<prop3>:<propn>
23 Protocolos UDP: transporte IP multienvío basado en UDP TCP: Transporte basado en TCP PING: IP multicast para encontrar los miembros iniciales MERGE2: vuelve a juntar subgrupos en un grupo FD_SOCK: Detección de fallos basada en sockets VERIFY_SUSPECT: Doble comprobación de miembros sospechosos pbcast.stable: Borra los mensajes leídos por todos pbcast.nackak: Asegura fiabilidad y orden FIFO UNICAST: Igual que el anterior, para mensajes a un proceso FRAG: Fragmenta los mensajes antes de enviarlos pbcast.gms: Gestión de grupos DISCARD: Descarta mensajes, según un porcentaje
24 Ejemplo configuración (Causal demo) private final String props = "UDP(mcast_addr= ;mcast_port=45566;ip_ttl=32;" + "mcast_send_buf_size=150000;mcast_recv_buf_size=80000):" + "PING(timeout=2000;num_initial_members=5):" + "DISCARD(up=0.05;excludeitself=true):" + "FD_SOCK:" + "VERIFY_SUSPECT(timeout=1500):" + "pbcast.nakack(gc_lag=50;retransmit_timeout=300,600,1200,2400,4800,9600):" + "UNICAST(timeout=5000):" + "pbcast.stable(desired_avg_gossip=2000):" + "FRAG(frag_size=4096;down_thread=false;up_thread=false):" + "pbcast.gms(join_timeout=5000;join_retry_timeout=2000;" + "shun=false;print_local_addr=true):causal";
25 5. Referencias a JGroups Sitio web: Documentos de interés: Código fuente o compilado (con demostraciones) Manual de uso (html y pdf) Manual del programador (avanzado) Información accesible desde la página de la asignatura
26 Otras plataformas Java para distribución JXTA: protocolos abiertos que permiten comunicarse a cualquier dispositivo en la red Orientado a comunicaciones p2p Permite crear grupos para clasificar a los pares (peers) Adecuado para grupos donde es necesario facilitar la interoperabilidad entre los dispositivos de la red Jini: Federaciones de servicios de red y clientes que se comportan de forma correcta Facilita los cambios en el sistema distribuido permitiendo su capacidad de adaptación Adecuado para grupos que deben ser escalables y flexibles para evolucionar fácilmente
27 Otras plataformas Java para distribución JavaSpaces procesos que cooperan mediante los flujos de objetos que entran y salen de uno o más espacios. Espacio: elemento compartido basado en red que sirve como área de intercambio y de almacenamiento de objetos Adecuado para grupos que necesitan compartir objetos persistentes y con capacidad de búsqueda Web services: no son específicos de Java Adecuado para sistemas con miembros heterogéneos J2EE Modelo cliente/servidor Adecuado para grupos altamente centralizados
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
Más detallesDISEÑ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 (pastrana@lcc.uma.es) Dpto. Lenguajes y Ciencias de la Computación. Universidad de Málaga
Más detallesPrá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
Más detallesPROGRAMACIÓN CLIENTE-SERVIDOR MEDIANTE SOCKETS EN JAVA
PROGRAMACIÓN CLIENTE-SERVIDOR MEDIANTE SOCKETS EN JAVA Qué es la arquitectura cliente servidor? La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas se reparten
Más detallesJava 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.
Más detallesSockets en Java. La Creatividad proviene de un conflicto de ideas. Uso de Sockets
Uso de Sockets Este pequeño manual, le muestra cómo funciona el Socket Server para crear un pequeño servidor web que envía una página HTML a cualquier Navegador Web como Firefox, Internet Explorer, etc..
Más detallesRESUMEN 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í
Más detallesJava 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
Más detallesLab 01: Programación de Sockets en TCP
UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO Departamento Académico de Informática REDES Y TELECOMUNICACIONES 2 Lab 01: Programación de Sockets en TCP Ingº Manuel Peñaloza Figueroa Dime y lo olvidaré.
Más detallesPatrones de diseño. Patrón básico Handler. Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez)
Patrones de diseño Patrón básico Handler Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez) Patrones de diseño Introducción Objetivos: Diseño específico para el problema, pero general para
Más detallesFederico Peinado www.federicopeinado.es
Federico Peinado www.federicopeinado.es Depto. de Ingeniería del Software e Inteligencia Artificial disia.fdi.ucm.es Facultad de Informática www.fdi.ucm.es Universidad Complutense de Madrid www.ucm.es
Más detallesPrá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
Más detallesIntroducción a Java LSUB. 15 de enero de 2015 GSYC
Introducción a LSUB GSYC 15 de enero de 2015 (cc) 2014 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial - SinObraDerivada
Más detallesRedes I Soluciones de la Práctica 1: /etc/network/interfaces, tcpdump y wireshark
Redes I Soluciones de la Práctica 1: /etc/network/interfaces, tcpdump y wireshark Universidad Rey Juan Carlos Curso 2007/2008 Resumen Los primeros cuatro apartados de la práctica consisten en replicar
Más detallesArquitectura 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
Más detallesUso 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
Más detallesRedes P2P y Java: JXTA
UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA Redes P2P y Java: JXTA Computación en la Red Andrés Marín López Introducción En entornos de computación ubicua los usuarios conectan
Más detallesCONTENIDO. 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
Más detallesComunicación Indirecta
Sistemas Operativos Distribuidos Comunicación Indirecta Alejandro Alonso Dpto. Ing. de Sistemas Telemáticos Contenidos 1. Introducción 2. Comunicación de grupos 3. Editor/Suscriptor 4. Colas de mensajes
Más detallesEstructura de las Aplicaciones Orientadas a Objetos El patrón Modelo-Vista-Controlador (MVC)
Estructura de las Aplicaciones Orientadas a Objetos El patrón Modelo-Vista-Controlador (MVC) Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial
Más detallesIngenierí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
Más detalles2. Estructura de un programa en Java
24 A. García-Beltrán y J.M. Arranz 2. Estructura de un programa en Java Objetivos: a) Describir la estructura del código fuente de una aplicación Java b) Presentar los conceptos de comentario y de identificador
Más detallesMetodología y Tecnología de la Programación
Metodología y Tecnología de la Programación Curso 2008/09 Tema 7 Tipos de Datos Abstractos Temario 7.1 Concepto de Tipo de Datos Abstracto 7.2 Clasificación de Tipos de Datos Abstractos 7.3 Especificación
Más detallesQué se entiende por diseño arquitectónico? Comprende el establecimiento de un marco de trabajo estructural básico para un sistema. Alude a la estructura general del software y el modo en que la estructura
Más detallesPruebas 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
Más detallesARQUITECTURAS CLIENTE/SERVIDOR
Arquitecturas Cliente/Servidor, Sem 2016-1 M.I.Yasmine Macedo Reza 1 ARQUITECTURAS CLIENTE/SERVIDOR Conceptos básicos Arquitecturas Cliente/Servidor, Sem 2016-1 M.I.Yasmine Macedo Reza 2 Conceptos básicos
Más detallesATLAS MANUAL DE INTEGRACIÓN
ATLAS MANUAL DE INTEGRACIÓN Servicios de Firma AFC Certificado Versión 1.1 Arquitectura de Software Hoja de Control Título Documento de Referencia Responsable Servicios de Firma AFC Certificado NORMATIVA
Más detalles3.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
Más detallesEJEMPLOS PROGRAMACIÓN SOCKET - JAVA
EJEMPLOS PROGRAMACIÓN SOCKET - JAVA 1.- Calcular el Cuadrado TCP En esta aplicación el cliente se conecta al servidor, para ello debe introducir la dirección IP del servidor y los parámetros sobre los
Más detallesArquitecturas cliente/servidor
Arquitecturas cliente/servidor Conceptos básicos 1 Conceptos básicos 1. Definición de puerto 2. Sockets 3. Conceptos cliente/servidor 4. Definición de Stream 5. Concurrencia, multiprogramación y multitarea
Más detallesEXAMEN 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
Más detallesRedes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet
Redes (IS20) Ingeniería Técnica en Informática de Sistemas http://www.icc.uji.es CAPÍTULO 8: El nivel de transporte en Internet ÍNDICE 1. Introducción Curso 2002-2003 - Redes (IS20) -Capítulo 8 1 1. Introducción
Más detallesCliente/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
Más detallesBenemé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
Más detallesAlicia Serrano Sánchez, Francisco Sánchez Molina, David Villa Alises, Felix Jesús Villanueva Molina y Juan Carlos López López
IceDDS: Servicio de propagación de eventos con aplicación en Smart Grids JCE 2013 Alicia Serrano Sánchez, Francisco Sánchez Molina, David Villa Alises, Felix Jesús Villanueva Molina y Juan Carlos López
Más detallesFUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005
Dpto. de Ingeniería de Sistemas Telemáticos E.T.S.I. Telecomunicación Universidad Politécnica de Madrid FUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005 Normas de examen: Con libros y apuntes Duración: 2 horas
Más detallesRMI [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
Más detallesCurso 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
Más detallesEspecificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.
SISTEMAS DISTRIBUIDOS DE REDES 2.- MODELOS ORIENTADOS A OBJETOS DISTRIBUIDOS 2.1. Tecnologías de sistemas distribuidos Para la implementación de sistemas distribuidos se requiere de tener bien identificados
Más detallesen 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
Más detallesManual de Usuario CPE OX330. Manual de Usuario CPE OX330
Manual de Usuario CPE OX330 Índice Contenido 2 1 Set UP 3 2 Configuración LAN 3 3 Configuración WAN 5 4 Configuración NAT 5 5 Configuración del Sistema 6 6 Tools 7 Estado del Sistema 7 2 Manual de uso
Más detallesBenemé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
Más detallespublic static void main(string[ ] args) { Numero f1 = new Numero(3); Numero f2 = new Numero(4); Numero f3 = f1; f1.value = f2.value; Numero f4 = null;
Examen de Programación Convocatoria de Septiembre 2005 Licenciatura de Lingüística y Nuevas Tecnologías Pregunta 1 Tenemos el siguiente programa: public class Numero { int value; public Numero(int i) {
Más detallesSistemas Distribuidos Junio 2008
Sistemas Distribuidos Junio 2008 Nombre: Ejercicio 1 [1 punto] Señala si cada una de las siguientes afirmaciones es cierta [C] o falsa [F] y explícalo. 1 [ ] Un servicio de FTP proporciona transparencia
Más detallesUNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: TUTORIAL DE SOCKETS EN JAVA
UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: TUTORIAL DE SOCKETS EN JAVA Índice 1. Presentación...3 2. Conceptos básicos...4 2.1. TCP...4 2.2.
Más detallesManual 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...
Más detalles1. 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
Más detallesCAPITULO 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
Más detallesRed LSUB. 4 de marzo de 2015 GSYC
Red LSUB GSYC 4 de marzo de 2015 (cc) 2015 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial - SinObraDerivada
Más detallesTema 3: Genericidad en Java. Tema 3: Genericidad en Java. Objetivos y Bibliografía. Modelos de Datos Genéricos
Tema 3: Genericidad en Java Tema 3: Genericidad en Java Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia Índice general: 1. Definición y Ventajas de la
Más detallesJAVA - 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
Más detallesTutorial BMS Server Studio UDP
Tutorial BMS Server Studio UDP ÍNDICE Página 0. Introducción...3 1. Configuración del puerto UDP...4 2. Ejemplos...6 2.1 Configuración manual...6 2.1.1 Configuración SocketTest...6 2.1.2 Configuración
Más detallesJAVA 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
Más detallesSistemas 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
Más detallesJava 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
Más detallesIntroducción Descripción del servicio
507953 1 Contenido Contenido Cambios Introducción Descripción del servicio Introducción Arquitectura Paso a paso Capa de negocio Adapter Interface Service Proxy Fichero de propiedades Despliegue del servicio
Más detallesComponentes 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
Más detallesEL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET
1 EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET La familia de protocolos TCP/IP fue diseñada para permitir la interconexión entre distintas redes. El mejor ejemplo es Internet: se trata
Más detallesServicios Web. Andrés Pastorini. TRIA Tecnólogo Informático
Andrés Pastorini TRIA Tecnólogo Informático Un servicio web expone un conjunto de servicios para ser consumidos a través de la red. En otras palabras, un servicio web especifica un conjunto de operación(funciones
Más detallesINTRODUCCIÓN A JAVA. Índice
INTRODUCCIÓN A JAVA Índice Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales Qué ventajas tengo como desarrollador? Bibliografía 2 1 Qué es Java? La tecnología Java
Más detalles1. Definición de puerto 2. Sockets 3. Conceptos cliente/servidor 4. Definición de Stream 5. Concurrencia, multiprogramación y multitarea 6.
1. Definición de puerto 2. Sockets 3. Conceptos cliente/servidor 4. Definición de Stream 5. Concurrencia, multiprogramación y multitarea 6. Servidores iterativos y concurrentes 7. Estándares Stream Es
Más detallesDiseño y Evaluación de Configuraciones. Componentes software para cargar el sistema
Diseño y Evaluación de Configuraciones Componentes software para cargar el sistema J.M. Drake 1 Objetivo de las prácticas. Gestionar la ejecución de aplicaciones complejas para que satisfagan los requisitos
Más detallesSensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J.
Sensor de Temperatura utilizando el Starter Kit Javelin Stamp Realizado por: Bertha Palomeque A. Rodrigo Barzola J. INTRODUCCION DIFERENCIAS EJEMPLOS JAVA Orientado a Objetos Multiplataforma Programar
Más detallesSockets en Java. Prof. Wílmer Pereira Universidad Simón Bolívar
Sockets en Java Prof. Wílmer Pereira Universidad Simón Bolívar Arquitectura Cliente/Servidor Cliente Request Reply Servidor Cómo permitir comunicación entre objetos situados en diferentes máquinas? Sockets
Más detallesPráctica 7: Invocación Web Services con REST
Práctica 7: Invocación Web Services con REST Aplicaciones Telemáticas II Introducción Los Web Services permiten realizar aplicaciones distribuidas, usando las ventajas que nos proporciona el protocolo
Más detalles1. Introducción 2. Historia 3. Características clave 4. Cuestiones de diseño
Tema 1. Introducción a los sistemas distribuidos 1. Introducción 2. Historia 3. Características clave 4. Cuestiones de diseño Tema 1 Introducción a los Sistemas Distribuidos 1 Introducción y objetivos
Más detallesPrimera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO. Raúl Gutiérrez Sánchez LAEFF - INTA raul@laeff.inta.
Primera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO LAEFF - INTA raul@laeff.inta.es Qué es Java? Java es un lenguaje de programación orientado a objetos desarrollado por Sun
Más detallesATLAS MANUAL DE INTEGRACIÓN Cliente del Servicio de SMS
ATLAS MANUAL DE INTEGRACIÓN Cliente del Servicio de SMS Versión 1.0 Arquitectura de Software Hoja de Control Título Documento de Referencia Responsable Servicio de SMS Cliente NORMATIVA ATLAS Arquitectura
Más detallesSistemas 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.
Más detallesIptables, herramienta para controlar el tráfico de un servidor
Iptables, herramienta para controlar el tráfico de un servidor La seguridad es punto muy importante a tener en cuenta en cualquier organización de ahí que sea fundamental hacer uso de aquellos mecanismos
Más detalles5.1 Introducción a Servicios Web
5.1 Introducción a Servicios Web Introducción Continuando con el ejemplo de intercambio de información de películas... => Actualmente ya no es necesario implementar la solución sugerida a mano Se han estandarizado
Más detallesLenguajes 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
Más detallesModelos de los sistemas distribuidos. Jorge Iván Meza Martínez jimezam@gmail.com
Modelos de los sistemas distribuidos Jorge Iván Meza Martínez jimezam@gmail.com Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/36 Contenidos Modelo arquitectónico
Más detallesLuego lleve el cliente a otra máquina y ejecute desde ahí usando el nombre de la máquina del servidor.
Ejemplos de sockets Los sockets son un mecanismo de comunicación entre procesos de muy bajo nivel, donde el usuario tiene que hacer muchas cosas, pero que siguen siendo muy importantes. En esta práctica
Más detallesArquitectura de sistema de alta disponibilidad
Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los
Más detallesJava 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
Más detallesREDES INFORMATICAS: Protocolo IP
REDES INFORMATICAS: Protocolo IP 1. PRINCIPIOS BÁSICOS DE IP El protocolo IP se basa en tres principios básicos: Un direccionamiento de los ordenadores. Un tipo de dato: el datragrama IP. Un algoritmo
Más detallesProgramación Orientada a Objetos con Java
Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer jorgeeie@uabc.mx Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la
Más detallesAplicaciones Cliente/Servidor en Gambas Prof: Mileti, P.
Aplicaciones Cliente/Servidor en Gambas Prof: Mileti, P. Al igual que un usuario se comunica con el programa por medio del teclado, dos programas se pueden comunicar entre sí por medio Sockets. Se podría
Más detallesCOMUNICACIÓN ENTRE PROCESOS SOCKETS
COMUNICACIÓN ENTRE PROCESOS SOCKETS Diseño de Sistemas Operativos Curso 2007/08 Grupo: Mi30 Martín Santana, A. David Martínez Santana, Luis Ignacio Qué son?(definición) n) Los sockets son mecanismos de
Más detallesParadigmas de Programación
Paradigmas de Programación 3.2. Orientación a Eventos Departamento de Informática Universidad de Valladolid Curso 2010-11 Grado en Ingeniería Informática Grado en Ingeniería Informática de Sistemas 11
Más detallesSistemas 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
Más detallesUniversidad de Cantabria corcuerp@unican.es
Herencia Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Aprender los conceptos de herencia Comprender la forma de derivar una
Más detallesPRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE
PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,
Más detallesTEMA 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
Más detallesUniversidad Carlos III de Madrid Ingeniería de Telecomunicación. Examen de Programación Febrero 2007. Parte de Ejercicios
Universidad Carlos III de Madrid Ingeniería de Telecomunicación Examen de Programación Febrero 2007 Parte de Ejercicios Responder y entregar cada ejercicio en hojas separadas Numerar todas las hojas de
Más detallesMultitarea en Java. Rafa Caballero - UCM
Multitarea en Java Rafa Caballero - UCM Programa Monoproceso (monotarea) En cada momento hay una única instrucción ejecutándose Se dice que el programa es monotarea, o monoproceso o monohebra (o single
Más detallesFRAMEWORK 2 Recepción de SMS
FRAMEWORK 2 Versión 1.1 Área de Integración y Arquitectura de Aplicaciones Hoja de Control Título Documento de Referencia Responsable FW2_MUS_Recepcion_SMS Área de Integración y Arquitectura de Aplicaciones
Más detallesJava Inicial (20 horas)
Java Inicial (20 horas) 1 Temario 1. Programación Orientada a Objetos 2. Introducción y Sintaxis Java 3. Sentencias Control Flujo 4. POO en Java 5. Relaciones entre Objetos 6. Polimorfismo, abstracción
Más detallesLABORATORIO DE RC PRÁCTICA 2: IMPLEMENTACIÓN DE UN CLIENTE Y SERVIDOR DE
UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC PRÁCTICA 1: IMPLEMENTACIÓN DE UN CLIENTE Y SERVIDOR DE ECO UDP PRÁCTICA 2: IMPLEMENTACIÓN DE UN CLIENTE
Más detallesTitulación: Ingeniero Técnico en Informática de Gestión Curso: 2º
1. Ejercicio (1 punto) Dado el array A={8, 3, 7, 1, 4, 9, 5, 2, 6 Describir cual es el estado del array A después de cada paso principal del algoritmo: InsertionSort. {8, 3, 7, 1, 4, 9, 5, 2, 6 {3, 8,
Más detallesLlamada 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:
Más detallesGuía de usuario: Sistema de tolerancia frente a fallos
Guía de usuario: Sistema de tolerancia frente a fallos Aviso importante: 1. Sistema de tolerancia frente a fallos requiere la misma versión FW en la unidad activa y pasiva 2. La unidad pasiva requiere
Más detallesGESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)
APRENDERAPROGRAMAR.COM GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I
Más detallesGran número de usuarios accediendo a un único servicio y con un único protocolo. Servidores y clientes con distintos protocolos.
1RWD7pFQLFD,(OSURWRFRORGHFRQH[LyQ1HW La función principal del protocolo Net 8 es establecer sesiones de red y transferir datos entre una máquina cliente y un servidor o entre dos servidores. Net8 debe
Más detallesCátedra de Sistemas Distribuidos Escuela de Ingeniería Electrónica Departamento de Sistemas e Informática
Cátedra de Sistemas Distribuidos Escuela de Ingeniería Electrónica Departamento de Sistemas e Informática Trabajo Práctico nro. 2: Comunicación Entre Procesos Tiempo Distribuido Objetivos del Práctico
Más detallesIdentificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java
Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java Identificadores Las variables se utilizan en programación para almacenar temporalmente
Más detalles4. Programación Paralela
4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios
Más detallesUniversidad de Cantabria corcuerp@unican.es
Networking Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Aprender los conceptos básicos de redes y su implementación en Java
Más detallesEl Protocolo IP. Tema 3. Servicio y Protocolo IP. Aplicaciones en Redes Locales 05/06
El Protocolo IP Tema 3 Aplicaciones en Redes Locales 05/06 Servicio y Protocolo IP Historia: Sus inicios datan de un proyecto que le propusieron a la agencia de Defensa de USA, DARPA para diseñar una red
Más detalles