PDF de programación - Sesión 1: Introducción a JMS - Servicios de Mensajes con JMS

Imágen de pdf Sesión 1: Introducción a JMS - Servicios de Mensajes con JMS

Sesión 1: Introducción a JMS - Servicios de Mensajes con JMSgráfica de visualizaciones

Publicado el 19 de Enero del 2019
555 visualizaciones desde el 19 de Enero del 2019
1,6 MB
49 paginas
Creado hace 13a (23/02/2011)
Especialista Universitario Java Enterprise

Sesión 1: Introducción a JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Especialista Universitario Java Enterprise

Puntos a Tratar
• Un Poco de Historia
• Dominios de Mensajería
• JMS

• Arquitectura
• Modelo de Programación

• Recursos JMS en Glassfish
• Una Aplicación JMS

• PTP
• Pub/Sub

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS - 2

Especialista Universitario Java Enterprise

Un Poco de Historia
• 60: mainframes
• 70: terminales + mainframes
• 80: PCs+ múltiples protocolos

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS - 3

Especialista Universitario Java Enterprise

Mensajería Empresarial
• Objetivo: transferir información entre sistemas
heterogéneos mediante el envío de mensajes.

• Diferentes soluciones de mensajería

• RPCs que hacen funciones de middleware mediante

una cola de mensajes
Ej: COM y CORBA

• Notificación de eventos, comunicación entre

procesos y colas de mensajes, incluidos en los SSOO
Ej: buffersFIFO, colas de mensajes, pipes, señales, sockets, ...

• Soluciones para una categoría de middleware que

ofrezca una mensajería fiable y asíncrona
Ej: WebShpereMQ, SonicMQ, TIBCO, Apache ActiveMQ, etc...

• Se necesitaba un sw para comunicar y transferir datos

entre diferentes aplicaciones, SSOO, protocolos e incluso
diferentes lenguajes de programación.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS - 4

Especialista Universitario Java Enterprise

¿Por QuéMensajería?
• Método de comunicación entre componentes software o

aplicaciones.

• Comunicación distribuída débilmente acoplada

• un componente envía un mensaje a un destino y el receptor lo

recoge de dicho destino.

• Ni emisor ni receptor tienen que estar disponibles al
mismo tiempo para comunicarse (independencia y
asíncronia)
• El emisor no tiene porquésaber nada del receptor, y viceversa.

• Ambos sólo deben saber el formato del mensaje y cual es

el destino del mismo.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS - 5

Especialista Universitario Java Enterprise

MOM
• El Midleware Orientado a Mensajes (MOM) es un

categoría de software para la intercomunicación de
sistemas.

• Mecanismo seguro, escalable, confiable y con bajo

acoplamiento.

• Permite la comunicación entre aplicaciones mediante un
conjunto de APIsofrecidas por cada proveedor y lenguaje
tendremos un API propietaria y diferente por cada MOM existente.


• Actúa como un mediador entre los emisores y los

receptores de mensajes.
• Esta mediación ofrece un nuevo nivel de desacoplamiento.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS - 6

Especialista Universitario Java Enterprise

MOM Como Mediador
• Se utiliza para mediar en la conectividad y la mensajería,
no solo entre las aplicaciones y el mainframe, sino de una
aplicación a otra.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS - 7

Especialista Universitario Java Enterprise

Ventajas de Usar MOM
• Persistencia de mensajes: para conexiones lentas/poco
fiables o donde el fallo de un receptor no afecta al emisor.

• Enrutamiento complejo: un mensaje a muchos

receptores, enrutamientos basados en propiedades, …

• Transformación de mensajes: permite la comunicación

entre dos aplicaciones que trabajan con diferentes
formatos de mensajes.

• Soporte para diversos protocolos de conectividad

• HTTP/S, SSL, TCP/IP, UDP, etc...

• Soporte para múltiples lenguajes de programación.

• Este gran abanico de protocolos, lenguajes y APIsprovoca

la aparición de JMS como estándar Java.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS - 8

Especialista Universitario Java Enterprise

Dominios de Mensajería
• Existen 2 modelos/dominios de mensajería:

• Punto a Punto (PTP), en la que un mensaje se

consume por un único consumidor.

• Publicación/Subscripción (Pub/Sub), en la que un

mensaje se consume por muchos consumidores.

• No todos los proveedores implementan ambos.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS - 9

Especialista Universitario Java Enterprise

Punto a Punto
• Un mensaje lo consume un

único consumidor(1:1)
• Pueden haber varios emisores.
• El destino del mensaje es una

cola definida y con un
nombre
• modelo FIFO: el 1er mensaje

encolado seráel 1ºen salir.

• Cuando el receptor extrae el mensaje, envía un acuse de

recibo a la cola para confirmar su correcta recepción.

• Mecanismo pull las colas retienen todos los mensajes
enviados hasta que son consumidos o hasta que expiren.

• Una aplicación PTP se construye bajo el concepto de

colas de mensajes, productores y consumidores.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS -10

Especialista Universitario Java Enterprise

Pub/Sub
• Un mensaje puede
consumirse por múltiples
consumidores (1:N).

• El destino es un tópico.

• Los mensajes en los tópicos no
se encolan. Un nuevo mensaje
en el tópico sobrescribirá
cualquier mensaje existente.

• Modelo de difusión: los publicadores publican en un
tópico, y los subscriptores se subscriben al tópico.

• El MOM se encarga de difundir los mensajes que llegan
al tópico mediante un mecanismo Push -> los mensajes
se envían automáticamente a los subscriptores.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS -11

Especialista Universitario Java Enterprise

Características Pub/Sub
• Cada mensaje puede tener múltiples consumidores
• Existe un dependencia temporal entre los publicadores y

los subscritores perecederos (non-durable)
• Un cliente que se subscribe a un tópico puede consumir los

mensajes publicados después de la subscripción, y el subscriptor
debe continuar conectado para consumir los posteriores
mensajes.

• El API JMS disminuye esta dependencia temporal

permitiendo crear subscripciones duraderas (durable).
• Permiten recibir mensajes que fueron enviados cuando los

subscriptores no estaban conectados.

• Útil en situaciones donde un grupo de aplicaciones quiere

notificar a otras de un evento particular.
• Ejemplo: una aplicación de CRM, al crear un cliente, puede
necesitar comunicar a otras aplicaciones la creación de éste.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS -12

Especialista Universitario Java Enterprise

JMS
• Especificación que ofrece un API estándar (mediante un

conjunto de interfaces) para poder enviar y recibir
mensajes sin atarnos a ningún proveedor.

• Minimiza el conocimiento de mensajería empresarial que

debe tener un programador Java para desarrollar
complejas aplicaciones de mensajería.

• Mantiene la portabilidad entre las diferentes

implementaciones de proveedores JMS.

¡JMS no es un MOM !.


• Abstrae la interacción entre los clientes de mensajería y

los MOMs


Igual que JDBC abstrae la comunicación con las BBDD
relacionales.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS -13

Especialista Universitario Java Enterprise

JMS Como API Estándar

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS -14

Especialista Universitario Java Enterprise

Historia de JMS
• Originalmente creada por Sun junto a un grupo de

compañías de la industria de la mensajería empresarial.


la primera versión de JMS data de 1998.

• La última release (1.1) fue en 2002

• desde entonces se trata de una tecnología estable y madura.

• Esta release unificólos dos conjuntos de APIspara

trabajar con los dos dominios de mensajería, de modo
que ahora sólo necesitamos una API para trabajar con
ambos dominios.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS -15

Especialista Universitario Java Enterprise

JMS y JavaEE
• JMS forma parte de JavaEEdesde la v1.3 de JavaEE
• El API JMS dentro de la plataforma JavaEEaporta:

• Aplicaciones cliente, componentes EJB y componentes Web que

pueden enviar o recibir de forma síncrona/asíncrona mensajes
JMS.

• Message-drivenBeans –MDBs: tipo de EJB que puede consumir

mensajes de forma asíncrona.

• JMS mejora JavaEEsimplificando el desarrollo de

aplicaciones empresariales
• Mediante interacciones asíncronas, de confianza y con bajo

acoplamiento entre los componentes JavaEEy los sistemas
legacyque soportan la mensajería.

• A su vez, JavaEEtambién mejora JMS

• con el soporte de transacciones distribuidas, y el

procesamiento de mensajes de manera concurrente.

Servicios de Mensajes con JMS

©2010-2011 Depto. Ciencia de la Computación e IA

Introducción a JMS -16

Especialista Universitario Java Enterprise

Conceptos JMS
• Cliente JMS: Una aplicación 100% Java que envía y recibe mensajes.

• Cualquier componente JavaEEpuede actuar como un cliente JMS.

• Cliente No-JMS: aplicación no Java que envía y recibe mensajes.
• Productor JMS: un cliente que crea y envía mensajes JMS.
• Consumidor JMS: un cliente que recibe y procesa mensajes JMS.
• Proveedor JMS: implementación de los interfaces JMS el cual está

idealmente escrito 100% en Java.
• El proveedor debe ofrecer prestaciones tanto de administración como de control

de los recursos JMS.

• Toda implementación de la plataforma Java incluye un proveedor JMS.

• Mensaje JMS: objeto (cabecera + propiedades + cuerpo) que contiene la

información y que es enviado y recibido por clientes JMS.

• Dominio JMS: Los dos estilos de mensajería: PTP y Pub/Sub.
• Objetos Administrados: objetos JMS preconfiguradosque con
  • Links de descarga
http://lwp-l.com/pdf14909

Comentarios de: Sesión 1: Introducción a JMS - Servicios de Mensajes con JMS (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad