2012-03-04 15 views
28

Ci sono dei vantaggi nell'utilizzare NServiceBus semplicemente usando il driver .net per RabbitMQ (supponendo che possiamo sostituire MSMQ con AMQP). NSB fornisce funzionalità aggiuntive o astrazioni che non sono disponibili direttamente in AMQP.Vantaggi specifici di NServiceBus over plain RabbitMQ

risposta

27

I principali vantaggi includono (ma non sono limitati a):

  • si prende cura di serializzazione/deserializzazione dei messaggi.
  • Fornisce un modello pulito per l'invio di messaggi w. gestori, invio polimorfico, organizzazione di conduttori in una tubazione, ecc.
  • Gestisce l'unità di lavoro.
  • Fornisce un'implementazione di saga ordinata.
  • Fornisce un processo host che può essere sottoposto a debug F5 e installato come servizio Windows.

Queste sono cose che è necessario eseguire da soli se si utilizza direttamente il client RabbitMQ .NET, a meno che, ovviamente, non sia necessario alcuno di questi elementi.

Oh, e se si utilizza MSMQ, invece di RabbitMQ, è possibile ottenere tutte queste cose in un modello broker-meno :)

+0

ha un senso, esplorerà ulteriormente queste caratteristiche, grazie. – xrcsblue

2

NSB utilizza spesso MSMQ come trasporto sottostante. Potrebbe usare RabbitMQ o qualche altro trasporto conforme a AMQP. NSB fornisce supporto per tutti i modelli di messaggistica di base, tra cui la comunicazione punto a punto, pub/sub ecc. La decisione di utilizzare un particolare trasporto sarebbe diversa da quella di scegliere NSB stesso. Ha molte funzionalità e puoi farti un'idea dal Documentation page.