Si bien tuve una experiencia muy amarga con la serie MQ debido a que la empresa asociada nos presionó (una tienda de Microsoft), el uso de la serie MQ (o cualquier sistema de mensajería) fue integral parte de la aplicación.
Básicamente, estábamos creando un proceso que manejaba el cumplimiento de la cadena de suministro para los artículos en espera. Si nuestro socio, un distribuidor, no tuviera los artículos que sus clientes querían, enviarían un mensaje a un sitio B2B, que estaría dirigido a posibles compañías que podrían cumplir con el pedido.
Construimos dos sabores diferentes de integración. El primero fue un enfoque ftp en el que los archivos de ancho fijo se enviaban de ida y vuelta a intervalos regulares, y habíamos añadido todo tipo de reglas para ayudar a garantizar que no omitíamos ningún dato.
El segundo fue el uso de la serie MQ donde los mensajes se colocaron en una cola con entrega garantizada. Luego, extraeríamos la cola y procesamos los mensajes. El sistema de búsqueda fue un gran beneficio aquí ya que nos permitió una manera confiable de transmitir mensajes críticos que dieron como resultado que se moviera dinero real.
Por otro lado con la misma serie MQ tuvimos que implementar una consulta sincrónica para obtener información. Queríamos que fuera sincrónico porque nuestros usuarios que acceden a este a través de la web esperarían para obtener la información. Hacer esto durante la serie MQ fue un desafío muy interesante y doloroso. La única razón por la que MQ se usó aquí fue porque era una línea de comunicación existente y la funcionalidad de consulta ya existía.
Un segundo ejemplo y esta vez fue el uso de MSMQ fue un sitio que recopiló información del código del dialhome inyectado en las aplicaciones del cliente. El código dialhome recolectaría estadísticas de uso de características como el programa SQM de Microsoft.Cuando llegaban los mensajes al servicio web, los soltábamos en una cola. Luego, podíamos tener cualquier cantidad de servidores de aplicaciones mostrando los mensajes y llevándolos a la base de datos para que se transfirieran al almacén.
MSMQ aquí garantizado que podríamos manejar ráfagas de mensajes colocándolos rápidamente en la cola. Esto ayuda a la escalabilidad y confiabilidad del sistema.
En mi experiencia reciente con otra compañía, existen para romper cosas y mantener a más personas empleadas en el seguimiento de los problemas. También espero que cuando se utilicen adecuadamente, sean útiles para algo. – JeeBee