2

Is there any way to setup a publish/subscribe system (1 publisher, 0..* subscribers) where every subscriber is guaranteed to receive every message exactly once and in the same order the messages were sent? Most bus systems (e.g. NServiceBus) will not guarantee this.

I don't care if I have to implement the system myself, but at least the transactional asynchronous communication (e.g. queue, or similar) should be able to do this.

Any hints/suggestions?

4444
  • 3,541
  • 10
  • 32
  • 43
Test Man
  • 21
  • 1
  • Azure Service Bus supports "Topics", which are pub-sub, and reliable delivery. Based on http://msdn.microsoft.com/en-us/library/hh367516.aspx, I believe that they should be in-order as well. There's also some info at: http://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-topics/ – Travis H Jul 05 '13 at 20:59

1 Answers1

0

In my (limited) experience you can you RabbitMQ to achieve this:

In specific, I recommend the pubslish/subscriber tutorial that they have:

Please note that specific tutorial does not involve the concept of confirms which would be the next step to make sure that the messages are delivered to the consumers.

As for message ordering it may also be achievable, depending on your use case, as explained in this stackoverflow post:

Hope it helps.

Community
  • 1
  • 1
Flame_Phoenix
  • 16,489
  • 37
  • 131
  • 266