Are there any advantages of using NServiceBus over simply using the .net driver for RabbitMQ (assuming we can replace MSMQ with AMQP). Does NSB provide any additional functionality or abstractions that are not available directly in AMQP.
Whats the difference between the two: While NService Bus is a service bus platform which means its an orchestrator but underlying transport is using decentralised like MSMQ, Rabbit MQ on the other hand is a Broker base platform.
When a consumer (subscription) is registered, messages will be delivered (pushed) by RabbitMQ using the basic. deliver method. The method carries a delivery tag, which uniquely identifies the delivery on a channel. Delivery tags are therefore scoped per channel.
Main advantages include (but are not limited to):
These are things, that you'd need to roll yourself, if you were to use the RabbitMQ .NET client directly - unless, of course, you don't need any of these things.
Oh, and if you use MSMQ instead of RabbitMQ, you can get all these things in a broker-less model :)
NSB most often uses MSMQ as the underlying transport. It could use RabbitMQ or some other AMQP compliant transport. NSB provides support for all the basic messaging patterns including point to point communication, pub/sub etc. The decision to use a particular transport would be different than that of choosing NSB itself. It has many features and you can get and idea from the Documentation page.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With