0

I have been using WCF for a fair bit now, and I have come across several articles on MSDN regarding WCF's publisher subscriber model.

One of the requirements in a project I'm about to embark on requires me to have one server send out messages to multiple servers, thus, I have a few queries regarding the publisher/subscriber model

My primary concern with the this is:

What happens if 2 out of 5 of my subscribers are disconnected, due to say, PC rebooting. Do I have to manually handle the publisher re-sending the messages to the 2 subscribers when they reconnect back?

I need each message sent out by the publisher to positively reach all the other subscribers, if they are offline, the publisher has to be responsible to re-send the messages when the subscribers are back online. Because there can be a lot of messages being sent by the publisher, does that mean I will need some sort of queuing mechanism to store all the messages that are supposed to be sent to the offline subscribers, and re-send them when they are back online?

Is using WCF's publisher/subscriber mode fitting in my scenario? Are there any models out there that supports disconnected subscribers, automatically resending when the subscriber is back online, or do I have to custom code every single aspect to handle this?

Null Reference
  • 11,260
  • 40
  • 107
  • 184

1 Answers1

0

You can try MSMQ, WCF supports it. The publisher will send the messages to 5 queues; each consumer will read its queue.

schglurps
  • 1,387
  • 1
  • 14
  • 26
  • If I do not want to use MSMQ due to size limitations, are there any other options? Or do I have to implement my own fail-safe mechanism? – Null Reference Jul 25 '12 at 10:00
  • You can configure the maximum size of your messages, for example : If you prefer to not use MSMQ, you will have, if the communication fails, to use a local storage (MSMQ ?) for your message and retry the communication later. – schglurps Jul 26 '12 at 09:07