9

Udi mentions here that "people have swapped out the MSMQ layer of NServiceBus and plugged in RabbitMQ in its place".

I'm looking to do the same thing with the end goal of being able to run an app built with NServiceBus on Mono/Linux with AMQP.

Before diving in though I'd like to get some feedback from people who might have done this already about pitfalls to avoid, red herrings etc.

Alternatively if the approach is a massive undertaking, it might be best to just use RabbitMQ directly, but if possible I'd like to stick with NServiceBus.

Michael Shimmins
  • 19,961
  • 7
  • 57
  • 90
  • 3
    I think you should do pro/con analysis of why you'd want to use NServiceBus vs. RabbitMQ. Personally having used both, I'm not sure why you'd want to use NServiceBus ontop of Rabbit, as Rabbit is a broker-style setup which removes a lot of the benefits of NServiceBus of being de-centralised. – mike Dec 09 '10 at 10:44
  • @mrnye - purely because we can't be dependent on MSMQ, as this app needs to run on Mono in a Linux environment as well as Windows. – Michael Shimmins Dec 21 '10 at 05:28
  • FYI https://docs.particular.net/nservicebus/bridge/ is now available, and a great use case is to gradually migrate a system from one transport to another – Adam Ralph Jul 07 '22 at 07:37

4 Answers4

6

MassTransit runs RabbitMQ as a supported transport:

ServiceBusFactory.New(sbc =>
{
    sbc.UseRabbitMq();
    sbc.ReceiveFrom("rabbitmq://localhost/app1")
});

Just do install-package masstransit.rabbitmq and make sure to change your console application framework to '.Net 4.0' instead of '.Net 4.0 Client Profile'.

Henrik
  • 9,714
  • 5
  • 53
  • 87
5

There is a project on Google Code you might take a look at:

http://code.google.com/p/nservicebusrabbitmq/

James
  • 460
  • 2
  • 8
  • 15
4

NServiceBus 4.0 will come with official support for RabbitMQ

Andreas Öhlund
  • 5,263
  • 20
  • 24
  • Tried to look this up on the NServiceBus website, but did not find anything. Do you happen to have a reference where I can track future features? – Steffe Jan 15 '13 at 10:41
  • 2
    The issue tracker is probably the most current list - https://github.com/NServiceBus/NServiceBus/issues?milestone=26&state=open – Andreas Öhlund Jan 15 '13 at 13:47
4

You might want to take a look at https://github.com/machine/machine.mta. Although the project description talks about MassTransit (another service bus impl. for .net), there's also a NServiceBus transport.

I'm in the process of converting the NServiceBus implementation so it can be use in Rhino ServiceBus..

Dave
  • 66
  • 1