Click here to Skip to main content
Rate this: bad
Please Sign up or sign in to vote.
See more: WCF MSMQ
Currently, to allow concurrency and load balancing while accessing a resource on server,
An WCF Service is implemented over MSMQ.
Not MSMQBinding, but Just MSMQ.
Client Writes content as Messages on Server's MSMQ queue.
A Windows Service on Server listens to the queue.
Upon receiving a message, it performs the appropriate action using the message content.
This works fine now. Any comments on this architecture?
The only downside seems to be few too many installations
(WCF Service + Win Service) X No.Of Servers
The better alternative seems to be to use netMSMQBinding, so that the WinService can be
replaced by a listener on service host itself.
But, sources say, MSMQ needs to be on client as well as server.
Client -> Client's MSMQ -> Message -> Server's MSMQ -> Server
Is there a way the architecture can skip the Client MSMQ WHILE using netMSMQBinding? Any
Note: The solution is deployed on intranet.
Posted 12-Nov-11 19:28pm

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

WCF can work as a listner to MSMQ messages using netMSMQBinding without any support of any other mechanism like Windows Service etc.
Sometimes it is preferred to keep MSMQ on both Servers Sender and Reciever, Considering in case if Reciever Server is down then you will have your messages in waiting mode in Sender Server's Queue.
In case if you want to avoid MSMQ on Sender's Sever then you can use MessageQueue.ReceiveByCorrelationId Method to make your Remote Message transactions more reliable. Below article has information on this.
You may refer below link for more information on MessageQueue.ReceiveByCorrelationId Method.
Jyothikarthk at 13-Nov-11 1:00am
Thanks a lot! And can you explain about How sender's queue is skipped from the architecture?
RaisKazi at 13-Nov-11 1:02am
Welcome! Above links has information on how you can work with Remote Queues.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 650
1 Maciej Los 525
2 Suvendu Shekhar Giri 229
3 Sascha Lefévre 229
4 Richard Deeming 195
0 Sergey Alexandrovich Kryukov 9,693
1 OriginalGriff 9,185
2 Peter Leow 5,112
3 Kornfeld Eliyahu Peter 3,373
4 Maciej Los 2,876

Advertise | Privacy | Mobile
Web04 | 2.8.150327.1 | Last Updated 13 Nov 2011
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100