¿Qué es ActiveMQ y para qué se utiliza?
1. La cola de mensajes de ActiviMq resuelve el problema del desacoplamiento del servicio y alivia la situación en la que el servidor no puede manejar la gran concurrencia del servicio. (kafka, RabbitMQ, activiMQ)
Otras funciones: procesamiento asincrónico, comunicación de mensajes, reducción de picos de tráfico, desacoplamiento de aplicaciones
Escenarios de aplicación:
1. Al registrarse, el punto clave es guardar la información del usuario en la base de datos. Enviar mensajes de texto para verificación o enviar correos electrónicos aumenta la complejidad del negocio. En este momento, otra plataforma de servicio completará el uso de MQ, el envío de mensajes de texto y el envío de correos electrónicos para notificar a MQ.
2. Plataforma de búsqueda y plataforma de almacenamiento en caché
Consultar datos, establecer caché e índice, no consultar desde la base de datos, consultar desde el caché o la biblioteca de índice, cuando se agrega la base de datos. modificado o eliminado Cuando se envía un mensaje a MQ, la plataforma de caché o la plataforma de índice obtiene el mensaje de MQ y actualiza el caché o el índice.
ActiveMQ utiliza el modelo estándar de productor (completa la producción de mensajes y envía mensajes) y consumidor (obtiene mensajes y completa su propia lógica de negocios).
Hay dos estructuras de datos
Tema (publicar y suscribirse) Un productor corresponde a varios consumidores Los mensajes no persisten de forma predeterminada y la persistencia debe configurarse manualmente. Si el servidor A cuelga y se genera otro mensaje, el servidor B lo utilizará. Incluso si se reinicia, el servidor A ya no recibirá el mensaje
Sistema de producto, sistema de inventario, generar página de detalles del producto sistema, ahora desea agregar información del producto, la información debe ser conocida por el sistema de inventario y el sistema de la página de detalles de información del producto.
Cola (punto a punto), un productor corresponde a un consumidor, persistencia de mensajes predeterminada
StringMessage
mapMessage
byteMessage
objectMessage
Para completar la persistencia del mensaje en el modo tema, es necesario asegurarse de que cada consumidor tenga un ID de cliente único (este artículo es de Beida Jade Bird)