nservicebus rabbitmq amqp

Ventajas específicas de NServiceBus sobre RabbitMQ simple



amqp (2)

¿Existe alguna ventaja de usar NServiceBus en lugar de usar el controlador .net para RabbitMQ (suponiendo que podamos reemplazar MSMQ con AMQP)? ¿NSB proporciona alguna funcionalidad adicional o abstracciones que no están disponibles directamente en AMQP?


Las principales ventajas incluyen (pero no se limitan a):

  • Se encarga de la serialización / deserialización de mensajes.
  • Proporciona un modelo ordenado para enviar mensajes w. manipuladores, despacho polimórfico, organización de manipuladores en una tubería, etc.
  • Se encarga de la unidad de trabajo.
  • Proporciona una implementación de saga limpia.
  • Le proporciona un proceso de host que puede ser depurado con F5, así como instalado como un servicio de Windows.

Estas son cosas que necesitaría para usted, si tuviera que usar el cliente .NET de RabbitMQ directamente, a menos que, por supuesto, no necesite ninguna de estas cosas.

Ah, y si usas MSMQ en lugar de RabbitMQ, puedes obtener todas estas cosas en un modelo sin intermediario :)


NSB utiliza con mayor frecuencia MSMQ como el transporte subyacente. Podría usar RabbitMQ o algún otro transporte compatible con AMQP. NSB proporciona soporte para todos los patrones de mensajería básicos, incluida la comunicación punto a punto, pub / sub etc. La decisión de usar un transporte en particular sería diferente a la de elegir el propio NSB. Tiene muchas características y puede obtener una idea desde la página de Documentación .