Groups | Blog | Home
all groups > dotnet distributed apps > november 2006 >

dotnet distributed apps : MSMQ question


Eric
11/2/2006 1:25:02 PM
I’m developing an application that I need to be able to push an alert to
thousands (approx 8k) machines. I’ve looked into multi casting to save
network utilization but the loss of packets makes it unreliable, I need to be
certain the message is delivered. Do you think it would be viable to use
MSMQ to push an alert to so many machines? I’m also concerned how the
queuing system works. If I send out 8,000 messages and half are not
available does MSMQ ping the machines until they are available? How does it
eAndy
11/8/2006 9:52:03 PM
Hi Eric,

Can you tell us a little more about the requirements?

What's your performance budget? (i.e. send 8K messages over 2 days or 12
seconds).
What are the priorities? i.e. Is guaranteed delivery more important than
speed or vice versus, or are they equally as important.
How big are the messages (8 bytes? 8K? 1MB?)

If you decide to use MSMQ and need guaranteed delivery you're going to need
to use transactions to ensure the messages move between queues. Planning the
deployment of the queues and servers and authn/Authz and A/D could be complex
or not so bad depending on a lot of the previous questions.

Alternatively I have wrapped a custom TCP server that can service thousands
of clients quickly. Make sure you use the thread pool, there are samples in
the sdk that show how to do async IO. Our messages were very small and it
scaled nicely.

eAndy
==================

[quoted text, click to view]
Eric
11/9/2006 7:15:02 AM
Hi eAndy,
The messages are small, I think around 4k. Speed and guaranteed delivery
are probably the most important. We'd like to have all 8k clients receive
the message under 15 min. I've tested transaction messages but they take too
long to send, so I'll probably have to use non transaction private queues.
The thing that makes me want to use MSMQ is the fact that it will handel
queueing, message expiration, and unavailable clients. I'd like to try the
TCP socket solution, do you have any code samples? Thanks

Eric
[quoted text, click to view]
eAndy
11/21/2006 2:10:02 PM
You might also check out the Spread toolkit http://www.spread.org
--
====================

eAndy

====================


[quoted text, click to view]
AddThis Social Bookmark Button