I have seen many socket application in which there is use of MSMQ. But when I go in details I think that we can do it without MSMQ also, so I want to know what is key benefi
MSMQ is a great piece of Windows. It is basically a message-oriented middleware that helps a lot in some software architectures.
This mainly addresses the common use case of asynchronous message processing: you have a service Service1 that communicates (send messages) with another part of your software architecture, say Service2.
Main problem: what if Service2 becomes suddenly unavailable? Will messages be lost?
If you use MSMQ it won't: Service1 will send messages into a queue, and Service2 will dequeue when it is available.
MSMQ will resolve following common issues:
Service2 won't die under the heavy load, it'll just dequeue and process messages, one after onePros of MSMQ vs another message-oriented middleware:
System.Messaging namespace in .Net to deal with MSMQ)