¿Cuándo usar el protocolo avanzado de Message Queue Server como RabbitMQ? [cerrado]

43

¿Puede alguien explicarme en qué casos de uso debería considerar usar AMQP como, por ejemplo, RabbitMQ? ¿Cuáles son los pros y los contras?

    
pregunta vbd 28.04.2012 - 10:25

2 respuestas

24

Imagina que tienes un servicio web que puede aceptar muchas solicitudes por segundo. También tiene un sistema de contabilidad que hace muchas cosas, una de las cuales es el procesamiento de solicitudes provenientes del servicio web.

Si coloca una cola entre el servicio web y el sistema de contabilidad, podrá:

  • tienen menos acoplamiento entre las dos aplicaciones, porque ahora ambas aplicaciones deben conocer los parámetros de configuración del sistema de administración de colas y el nombre de la cola. Aquí el problema es que, por lo general, es más probable que mueva algunas aplicaciones a otro servidor que mueva el sistema de administración de colas.
  • si recibe muchas solicitudes en un corto período de tiempo, el sistema contable podrá procesarlas todas de todas formas
  • persistir algunas solicitudes si su número se vuelve realmente enorme

Por supuesto, podría tener situaciones más complejas en las que el número de aplicaciones sea mucho mayor que dos y necesite administrar la comunicación entre ellas.

    
respondido por el Виталий Олегович 28.04.2012 - 10:56
15

Además de proporcionar un búfer entre un servicio web y otro servicio backend, las colas de mensajes pueden usarse para escenarios más avanzados. Rabbit MQ (y otros productos maduros de Message Queue, también conocidos como MOM - Message Oriented Middleware) se pueden configurar para enrutar y distribuir mensajes de acuerdo con diferentes reglas.

Por ejemplo, la técnica de enrutamiento Pub-Sub permite que una sola fuente envíe un mensaje y que muchos oyentes lo reciban. Esto es comúnmente usado por el software de comercio de acciones para mantener actualizados a los usuarios.

También debido al hecho de que la mayoría de las MOM tienen sdks para múltiples idiomas y plataformas, se pueden usar para integrar aplicaciones que están escritas en diferentes plataformas.

Estos son solo algunos de los escenarios habilitados por MOMs.

    
respondido por el Michael Brown 28.04.2012 - 14:55

Lea otras preguntas en las etiquetas