-
Introducción
-
Intercambio de mensajes entre aplicaciones
- Bajo acoplamiento
- Transparencia de ubicación
- Persistente / No persistente
- Transaccional / No Transaccional
-
Patrones
-
Messaging Channels
-
Point to Point
-
Queues
- Un mensaje es recibido solo por un consumidor
-
Publish Subscribe
-
Topics
- Cada suscriptor recibe una copia del mensaje
-
Java
-
JMS
- Java Messaging Service
-
Elementos
- JMS Provider
- JMS Client
- JMS Producer/Publisher
- JMS Consumer/Subscriber
-
JMS Message
- Header
- Properties
- Message body
- Text
- Para texto o XML
- Object
- Serializar objetos en Java
- Map
- Name-Value pairs
- Bytes
- Bytes con formato nativo
- Stream
- Bytes con formato Java
- JMS Queue
- JMS Topic
-
Implementaciones
-
Spring JMS
- Simplifica el uso del JMS API
- Infraestructura en configuración XML
- Message Driven POJOs
- JmsTemplate
-
Servidores
-
Apache ActiveMQ
- http://activemq.apache.org/
-
Características
- Open Source
- Soporta JMS 1.1 y J2EE 1.4
- Soporte para Spring Framework
-
Multiplataforma
- Java, C, C++, C#, Ruby, Perl, Python, PHP
-
Persistencia
-
AMQ Message Store
- Default en ActiveMQ 5
- Transaccional
- Rápido y confiable
-
JDBC
- Transaccional
- Confiable pero lento
-
Journaled JDBC
- Transaccional
- Más rápido que JDBC
- 2 partes
- Journal
- Database
-
OpenJMS
- http://openjms.sourceforge.net/
-
RabbitMQ, using AMQP
- http://www.rabbitmq.com/
-
IBM WebSphere MQ
- http://www-01.ibm.com/software/integration/wmq/
-
Message Queue de Microsoft (MSMQ)
- http://en.wikipedia.org/wiki/Microsoft_Message_Queuing
-
Referencias
- http://www.slideshare.net/dejanb/apache-activemq-enterprise-messaging-in-action
- http://www.slideshare.net/bruce.snyder/messaging-with-activemq-presentation
- http://www.slideshare.net/bruce.snyder/enterprise-messaging-with-activemq-and-spring-jms
-
Acerca de
- Topic
- Topic
-
Referencias
- http://en.wikipedia.org/wiki/Behavior_driven_development
- http://dannorth.net/introducing-bdd/