1. Introducción a ActiveMQ Primero analiza este escenario: cuando compramos en la web, debemos revisar, hacer un pedido, crear una factura, tramitar pagos, cumplir un pedido, enviar envíos, etc. Sin embargo, cuando un usuario realiza un pedido, es redirigido inmediatamente a la página "Gracias por tu pedido". No solo eso, sino que si no hay retraso, el usuario también recibirá un correo electrónico. Si usamos la forma tradicional de implementar, generalmente es operar la base de datos y luego llamar a varias interfaces, a varios servicios para esperar distintas respuestas, de modo que tarda mucho en ver el resultado del siguiente pedido; si hay un problema en un determinado enlace, el resultado del pedido no será visible durante un tiempo, para el comercio electrónico moderno esto es intolerable. Entonces ActiveMQ puede resolver este problema muy bien: cuando el usuario realiza un pedido, se llama a ActiveMQ para enviar el pedido, y entonces el sistema puede volver a la página de resultados, y todo el proceso de pedido no se llamará de forma sincrónica, y el JOB en segundo plano podrá ser chateado y ejecutado. Si el volumen de pedidos en recepción es grande, cada pedido solo necesita llamarse una vez y la oficina de fondo no puede gestionarlo todo de una vez? Tómate tu tiempo, nadie te obliga, hay pedidos esperando en la cola en ActiveMQ, no se irritarán. Este escenario es ideal para un tipo de cola de caché, llamada cola de mensajes, que muchos productos pueden implementar y, por cierto, responde a la siguiente posible pregunta: es mucho más rápida que una base de datos. Este artículo parte de lo básico y aprende juntos el entorno operativo del sistema de este artículo: Windows7 32-bit 2. Descarga la dirección de descarga de la web oficial de ActiveMQ: http://activemq.apache.org/ 3.运行ActiveMQ解压缩apache-activemq-5.10.0-bin.zip,然后双击apache-activemq-5.10.0inwin32activemq.bat运行ActiveMQ程序。 Consulta la última línea de la salida de la consola: "se permite el acceso a todos los MBeans" para demostrar que el arranque fue exitoso. Después de iniciar ActiveMQ, puedes iniciar sesión usando el navegador para iniciar sesión: http://localhost:8161/admin/ autenticación, el nombre de usuario predeterminado es administrador y la contraseña es administrador (La premisa es que el entorno Java está instalado) Descarga la versión .NET de la Dll:Apache.NMS-1.6.0-bin.zip y Apache.NMS.ActiveMQ-1.6.4-bin.zip al mismo tiempo Descárgate todo desde aquí: http://archive.apache.org/dist/activemq/apache-nms/1.6.0/ 3. El primer ejemplo de ActiveMQ utiliza C# para escribir una fuente de información, es decir, el productor: La interfaz es muy sencilla: una Lable, un TextBox, un Button, luego añade Apache.NMS.dll y Apache.NMS.ActiveMQ.dll referencias, encuéntralos en los otros 2 paquetes de descarga anteriores, presta atención al número de versión.
Puedes hacer clic en el botón para enviar algunos mensajes, y estos mensajes se almacenarán temporalmente en ActiveMQ, y podrás iniciar sesión en la página web donde solo has pedido una contraseña para verlos.
Luego escribe el receptor, es decir, el consumidor: Además, añade referencias a esas 2 DLLs, la interfaz es muy sencilla con solo una Lable:
En cuanto lo inicias, verás que estos mensajes se han recibido aquí y que los del lado del servidor han sido eliminados.
4. Resumen Lo anterior implementa una cola de mensajes P2P, que se almacena temporalmente y espera su procesamiento, y el mensaje desaparece tras el procesamiento, asegurando la entrega, no se pierde ni se pierda. Este modo solo puede usarse en ocasiones limitadas, y el cliente solo puede tener uno, que pertenece a la forma de entrega exprés, y no puede cumplir con los requisitos de procesamiento del pedido, la razón es muy simple: el enlace de inspección por lista negra obtiene esta información del pedido, y el enlace de revisión no se puede obtener, y en la siguiente sección aprendemos "envío de mensajes en grupo", es decir, grita, el pedido está en camino, todos empiezan a ponerse ocupados...
Nota: El artículo se reimprime y el mensaje del artículo. Propiedades.SetString("filter","demo"); No hace falta que esto se configure!!
|