What does Windows Service Bus add to MSMQ?

David picture David · Sep 30, 2013 · Viewed 10.7k times · Source

I'd like to make an informed choice towards a simple publish/subscribe architecture.

So I'm wondering: what does the Service Bus add that MSMQ can't do?
What are the drawbacks of the Service Bus?

Thx for enlightening me!

Answer

tom redfern picture tom redfern · Oct 3, 2013

The main functional difference is Service Bus provides out of the box support for message exchange semantics such as topic based routing via publish-subscribe.

MSMQ on the other hand is a lightweight store-and-forward queuing system, which supports point-to-point one way messaging.

Service Bus:

  1. depends on SQL Server, and
  2. is a broker. This may be considered a drawback.

If you are looking at pub-sub frameworks then a popular one at the moment (free in single threaded mode) is NServiceBus, which sits on top of MSMQ, though has swap-able transport.