stringtranslate.com

Broker de mensajes

Diagrama de secuencia para representar el patrón Message Broker

Un intermediario de mensajes (también conocido como intermediario de integración o motor de interfaz [1] ) es un módulo de programa informático intermediario que traduce un mensaje del protocolo de mensajería formal del remitente al protocolo de mensajería formal del receptor. Los intermediarios de mensajes son elementos de las redes de telecomunicaciones o de ordenadores en los que las aplicaciones de software se comunican intercambiando mensajes definidos formalmente. [1] Los intermediarios de mensajes son un componente básico del middleware orientado a mensajes (MOM), pero normalmente no sustituyen al middleware tradicional como MOM y la llamada a procedimiento remoto (RPC). [2] [3]

Descripción general

Un intermediario de mensajes es un patrón arquitectónico para la validación, transformación y enrutamiento de mensajes. Media la comunicación entre aplicaciones [ vague ] , minimizando el conocimiento mutuo que las aplicaciones deben tener entre sí para poder intercambiar mensajes, implementando de manera efectiva el desacoplamiento . [4]

Objetivo

El objetivo principal de un intermediario es recibir mensajes entrantes de las aplicaciones y realizar alguna acción sobre ellos. Los intermediarios de mensajes pueden desacoplar puntos finales, cumplir requisitos no funcionales específicos y facilitar la reutilización de funciones intermediarias. Por ejemplo, un intermediario de mensajes puede utilizarse para gestionar una cola de carga de trabajo o una cola de mensajes para varios receptores, lo que proporciona almacenamiento fiable, entrega garantizada de mensajes y, tal vez, gestión de transacciones.

Ciclo vital

Los siguientes son otros ejemplos de acciones que podría gestionar el bróker: [2] [3]

Los intermediarios de mensajes se basan generalmente en una de dos arquitecturas fundamentales: hub-and-spoke y bus de mensajes. En el primero, un servidor central actúa como el mecanismo que proporciona servicios de integración, mientras que en el segundo, el intermediario de mensajes es una columna vertebral de comunicación o un servicio distribuido que actúa en el bus . [3] Además, se puede utilizar un enfoque multi-hub más escalable para integrar múltiples intermediarios. [3]

Semántica en tiempo real

Los intermediarios de mensajes diseñados específicamente para lograr comunicaciones limitadas en el tiempo con predictibilidad de extremo a extremo permiten el desarrollo de sistemas en tiempo real que requieren predictibilidad de ejecución . Con frecuencia, los sistemas con requisitos en tiempo real implican interacción con el mundo real ( robótica , automatización de vehículos , radio definida por software , etc.).

La especificación CORBA en tiempo real de Object Management Group proporciona una base teórica para las tecnologías de comunicaciones predecibles al imponer los siguientes requisitos:

A los efectos de esta especificación, la “previsibilidad de extremo a extremo” de la puntualidad en un sistema CORBA de prioridad fija se define como:

• respetar las prioridades de los hilos entre el cliente y el servidor para resolver la contención de recursos durante el procesamiento de las invocaciones CORBA;

• limitar la duración de las inversiones de prioridad de subprocesos durante el procesamiento de extremo a extremo;

• limitar las latencias de las invocaciones de operaciones

Lista de software de mensajería

Véase también

Referencias

  1. ^ ab "IB (integration broker)". Glosario de TI . Gartner, Inc. Consultado el 17 de mayo de 2018 .
  2. ^ ab Kale, V. (2014). "Tecnologías de integración". Guía de computación en la nube para gerentes de negocios y tecnología: de la computación distribuida a las aplicaciones de software en la nube . CRC Press. págs. 107–134. ISBN 9781482219227. Recuperado el 17 de mayo de 2018 .
  3. ^ abcd Samtani, G.; Sadhwani, D. (2013). "Agentes de integración y servicios web". En Clark, M.; Fletcher, P.; Hanson, JJ; et al. (eds.). Estrategias y arquitecturas empresariales de servicios web . Apress. págs. 71–84. ISBN 9781430253563. Recuperado el 17 de mayo de 2018 .
  4. ^ Ejsmont, A. (2015). "Procesamiento asincrónico". Escalabilidad web para ingenieros de startups . McGraw Hill Professional. págs. 275-276. ISBN 9780071843669.
  5. ^ Rotaru, Mihai; et al. (diciembre de 2017). "Mensajería confiable para millones de usuarios con datos migratorios". Actas de la 18.ª conferencia sobre middleware de ACM/IFIP/USENIX: Industrial Track . págs. 1–7. arXiv : 1712.09876 . doi :10.1145/3154448.3154449. ISBN . 9781450352000.S2CID35552786  .​