¿Alternativas a RabbitMQ para la tienda centrada en .NET?

Necesito una solución de mensajería confiable. Parece que RabbitMQ abordaría las necesidades de mi aplicación. Sin embargo, mi entorno no es adecuado para implementar Erlang y Mnesia en un servidor. Es un entorno empresarial y es una gran batalla de trámites burocráticos para conseguir que se desplieguen piezas "no estándar" como esa. Preferiría encontrar un marco de mensajería confiable similar a RabbitMQ, pero construido sobre .NET. Almacenar mensajes en Oracle y / o SQL Server sería una ventaja. ¿Algo así por ahí?

Soy consciente de NServiceBus, pero no creo que esto se centre tanto en la mensajería confiable como RabbitMQ.

preguntado el 10 de mayo de 11 a las 12:05

I'm aware of NServiceBus, but I don't think this is focused on reliable messaging as much as RabbitMQ is ¿Qué te hace decir eso? -

Ehh ... mi propia (posiblemente limitada) comprensión de NServiceBus. Si quieres corregirme, hazlo. Quizás estoy entendiendo mal lo que NServiceBus está tratando de hacer. -

4 Respuestas

¿Qué tal el viejo msmq? Es un componente estándar en los sistemas de servidor de Windows, tiene enlaces WCF ... así que supongo que esto es exactamente lo que está buscando. Sin embargo, afaik tiene su propio almacenamiento de mensajes basado en el sistema de archivos y no es compatible con el servidor SQL u Oracle para ese propósito.

contestado el 10 de mayo de 11 a las 17:05

MSMQ, por lo que tengo entendido, es un mecanismo para persistir mensajes, pero no tiene ningún tipo de capa de servicio para orquestar entre editores de mensajes y suscriptores ni nada por el estilo. Preferiría no escribir todo eso yo mismo. Pero si lo fuera, la capa de persistencia posiblemente sería MSMQ. - RationalGeek

Por eso Microsoft creó WCF. - Hans Passant

Tendré que investigar usando WCF con MSMQ. Gracias por la info. - RationalGeek

Echa un vistazo a ZeroMQ

contestado el 10 de mayo de 11 a las 17:05

Usaría NServiceBus (que ya mencionaste) o MassTransit; ambos usan MSMQ.

Ambos se centran en la mensajería confiable y se sabe que se utilizan en muchas aplicaciones críticas.

contestado el 10 de mayo de 11 a las 17:05

También existe ActiveMQ. Está más orientado a Java, pero puede hacerlo funcionar en .NET, tengo una gran implementación de ActiveMQ que usa C #, pero planeo convertirlo a RabbitMQ.

contestado el 27 de mayo de 11 a las 19:05

ActiveMQ ya no se está desarrollando activamente desde que el proveedor creó ZeroMQ. Para uso interno, ZeroMQ es una gran solución ya que no es necesario instalar ningún servidor. De hecho, cualquier funcionalidad que desee de un servidor se puede programar en una de sus aplicaciones utilizando ZeroMQ, por lo que tiene lo último en flexibilidad y es fácil de construir y soportar. - Michael Dillon

@Michael Dillon Gracias, nunca antes había oído hablar de ZeroMQ. Tendré que investigarlo. - Kelly

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.