Pregunta

Solo hago algunos picos rápidos en la posibilidad de usar un sistema de mensajería para procesar archivos que están en un sistema de flujo de trabajo bien desacoplado.

¿Cuáles son los pros y los contras que las personas han encontrado al usar cada uno de los marcos anteriores? ¿Cuáles son las ventajas de usar estos en comparación con un sistema MSMQ enrollado a mano con los enlaces de WCF y / o las soluciones que no son de MSMQ?

¿Fue útil?

Solución

Recomiendo que se mantenga alejado de las soluciones enrolladas a mano, ya que hay un montón de cosas un tanto difíciles que deben resolverse de la manera correcta, por ejemplo, cómo se manejan las transacciones, cómo las excepciones causan las reversiones, cómo detener el retroceso sin fin (veneno). mensajes), cómo integrarse con flujos de trabajo de larga duración para que los límites de la gestión del estado se alineen, y más.

Probablemente querrá algún tipo de infraestructura de mensajería duradera / transaccional, por lo que si no usa 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 Windows, a diferencia de Service Broker, que no lo está.

En términos de elegir entre NServiceBus, Mass Transit y Rhino Service Bus, esta respuesta de Stackoverflow comparando NServiceBus con Mass transit sería Sé un buen lugar para comenzar ...

En nuestra versión 3.1, presentamos NSB Studio, un conjunto de herramientas integradas de modelado 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 haga por usted. automáticamente. Yo diría que esto realmente inclina las escalas a favor de NServiceBus.

Espero que ayude.

Descargo de responsabilidad: soy el autor de NServiceBus.

Otros consejos

NServiceBus es un buen producto, pero tenga 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 información de la licencia anterior.

Puede suceder que en 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.

Mass transit es de código abierto absolutamente gratuito, no tiene limitaciones y está bajo licencia Apache 2.0.

No he usado Rhino Service Bus .

Una actualización del estado de Rhino vs NServicebus:

http://www.infoq.com/news/2012/04/ nservicebus3-0

  

InfoQ a Ayende: anteriormente ha escrito un bus de servicio para .NET   usted mismo, es decir, el Rhino Service Bus En caso de usuarios de Rhino Service   Bus ahora reconsiderar y pasar a NServiceBus?

     

Ayende: construí Rhino Service Bus alrededor de 2008. Lo construí principalmente   porque no estaba contento con el estado de los otros autobuses de servicio en   el tiempo. He tenido diferentes preocupaciones y direcciones al construir mi   bus 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 fuera de la caja. Si yo fuera   Comenzando con los autobuses de servicio hoy, dudo mucho que lo haría   estar construyendo la mía.

una posible desventaja de cualquier cosa basada en MSMQ es la restricción en el tamaño máximo del mensaje. IIRC es de aproximadamente 4 MB, con lo que puede encontrarse fácilmente si se trata de archivos grandes y almacena el contenido del archivo dentro del mensaje.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top