Este post te ayuda a comenzar con la Mensajería Empresarial y aprender los conceptos básicos. Entonces, ¿qué es la Mensajería Empresarial?
La Mensajería Empresarial consta de dos elementos principales:
-
Broker de Mensajes
-
Eventos Empresariales
Broker de Mensajes
Bien, esto es fácil. Los brokers de mensajes llevan décadas en funcionamiento. La mensajería es:
“En programación, la mensajería es el intercambio de mensajes (datos especialmente formateados que describen eventos, solicitudes y respuestas) a un servidor de mensajería, que actúa como un programa de intercambio de mensajes para programas clientes.
La mensajería también facilita la comunicación entre programas en diferentes entornos de programación (idiomas, compiladores y sistemas operativos) ya que lo único que cada entorno necesita entender es el formato y protocolo de mensajería común.”
Fuente:
http://whatis.techtarget.com/definition/messaging
En lugar de enviar mensajes directamente a los receptores (clientes), preferimos enviarlos a un broker de mensajes, que luego reenvía el mensaje. Utilizar un middleware tiene, entre otros, los siguientes beneficios:
-
No necesitamos conocer protocolos o interfaces específicos de clientes, ya que nunca hablamos directamente con los clientes. En su lugar, todos acordamos en lenguajes/protocolos específicos (generalmente AMQP o MQTT) y solo necesitamos ser capaces de comunicarnos con el middleware, que es nuestro broker de mensajes.
Se reduce drásticamente el código fuente, las bibliotecas y la complejidad, ya que solo se utiliza el protocolo del broker de mensajes.
-
Las aplicaciones en diferentes tecnologías y plataformas pueden intercambiar datos
, si pueden implementar un protocolo como AMQP o MQTT.
-
Es posible persistir temporalmente mensajes en colas hasta que se entreguen de manera confiable a los clientes receptores.
Incluso si los receptores están temporalmente fuera de línea, el mensaje puede almacenarse en búfer y se entrega cuando el receptor vuelve a estar en línea. Los desarrolladores no tienen que preocuparse por almacenar en búfer mensajes, etc. Todo esto lo realiza el broker de mensajes.
-
Comunicación asincrónica (no bloqueante) entre emisores y receptores
. Simplemente envía tu mensaje al broker de mensajes y continúa con el procesamiento de tu lógica. Nuevamente, cuando el broker de mensajes recibe los mensajes, se encarga de entregarlos a los receptores.
-
Tus aplicaciones se vuelven más pequeñas porque la tarea de entrega de mensajes se delega a un broker de mensajes dedicado.
Esto también significa que tus aplicaciones son más fáciles de leer, mantener, probar y aumenta el rendimiento.
-
Al usar un broker de mensajes, permitimos que los sistemas distribuidos se comuniquen entre sí.
En esta configuración, estás débilmente acoplado, por lo que puedes cambiar fácilmente entre arquitecturas cuando cambia el entorno.
...