msmq - nServiceBus vs Mass Transit vs Rhino Service Bus vs otro?
masstransit rhino-esb (4)
Recomiendo mantenerse alejado de las soluciones hechas a mano, ya que hay un montón de cosas difíciles de conseguir, como la forma en que se manejan las transacciones, cómo las excepciones causan retrocesos, cómo dejar de retroceder sin parar (mensajes de envenenamiento), cómo integrarse con flujos de trabajo de larga duración para que los límites de gestión del estado se alineen, y más.
Es probable que desee algún tipo de infraestructura de mensajería duradera / transaccional, por lo que, si no utiliza MSMQ, se quedaría con Service Broker en la plataforma de Microsoft o alguna otra alternativa, como ActiveMQ. MSMQ tiene la ventaja de que ya está instalado en todas las máquinas con Windows, a diferencia de Service Broker que no lo está.
En términos de elegir entre NServiceBus, Mass Transit y Rhino Service Bus, se puede caracterizar por el gusto que prefiera, aunque NServiceBus lleva más tiempo siendo el más estable.
En nuestra versión 3.1, presentamos NSB Studio, un conjunto de herramientas de modelado integradas de Visual Studio que le permiten modelar su sistema a un nivel más alto de abstracción y hacer que gran parte de la configuración e inicialización de NServiceBus se realice automáticamente. Diría que esto realmente inclina la balanza a favor de NServiceBus.
Espero que ayude.
Descargo de responsabilidad: soy el autor de NServiceBus.
Simplemente estoy acelerando el uso de un sistema de mensajería para procesar archivos que se encuentran en un sistema de flujo de trabajo bien desacoplado.
¿Cuáles son los pro y los contras que las personas han encontrado al usar cada uno de los marcos anteriores? ¿Cuáles son las ventajas de usar estos frente a un sistema MSMQ enrollado a mano con los enlaces WCF y / o soluciones que no son de MSMQ?
Una actualización del estado de Rhino vs NServicebus:
http://www.infoq.com/news/2012/04/nservicebus3-0
InfoQ para Ayende: Usted ha escrito previamente un bus de servicio para .NET usted mismo, a saber, el Autobús de servicio de Rhino. ¿Deberían los usuarios de Rhino Service Bus reconsiderar y pasar a NServiceBus?
Ayende: Creé el Rhino Service Bus alrededor de 2008. Lo construí principalmente porque no estaba contento con el estado de los otros buses de servicio en ese momento. He tenido diferentes preocupaciones y dirección al construir mi autobús de servicio, pero eso fue hace 4 años. En ese momento, creo que NServiceBus hizo grandes avances para convertirse en un producto más fácil de usar y tener una historia de desarrollo mucho mejor. Si hoy comenzara con los autobuses de servicio, dudo mucho que esté construyendo el mío.
una posible desventaja de cualquier cosa basada en MSMQ es la restricción en el tamaño máximo de mensaje. IIRC es de aproximadamente 4MB, con el que podría encontrarse fácilmente si está tratando con archivos de gran tamaño y almacenando el contenido del archivo dentro del mensaje.
NServiceBus es un buen producto, pero ten cuidado con los problemas de licencia. Tiene una tendencia a cambiar su política de licencias como lo desean los autores. Eche un vistazo, por ejemplo, a la información de licencia anterior.
Puede ocurrir que en el medio del desarrollo de su proyecto descubra que tiene que pagar mucho dinero por NServiceBus.
También la versión gratuita tiene limitaciones de rendimiento.
MassTransit es un código abierto absolutamente gratuito, no tiene limitaciones y está bajo la licencia Apache 2.0.
No he usado el bus de servicio de Rhino .