Click here to Skip to main content
Rate this: bad
good
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
 
pointers?
 
Note: The solution is deployed on intranet.
Posted 12-Nov-11 19:28pm

1 solution

Rate this: bad
good
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.
 
http://beaucrawford.net/post/MSMQ-ndash3b-Sending-Messages-to-Remote-Queues.aspx
 
You may refer below link for more information on MessageQueue.ReceiveByCorrelationId Method.
 
http://msdn.microsoft.com/en-us/library/4f31cxs4.aspx
  Permalink  
Comments
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 6,055
1 DamithSL 4,621
2 Maciej Los 4,087
3 Kornfeld Eliyahu Peter 3,500
4 Sergey Alexandrovich Kryukov 3,294


Advertise | Privacy | Mobile
Web04 | 2.8.141220.1 | Last Updated 13 Nov 2011
Copyright © CodeProject, 1999-2014
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