¿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?
¿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?
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á:
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.
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.
Lea otras preguntas en las etiquetas design message-queue