tags:

views:

37

answers:

2

I keep hearing about MSMQ and Biztalk for message processing, but I'm not entirely sure what this means. When these technologies are in place, what problems are messaging and these technologies addressing?

+2  A: 

Message queues and processing are pretty well studied in computer science. Just about any "101" text book should give you a good explination.

MSMQ's been around since something like 1996, and BizTalk has been around for about a decade now. Here's Wikipedia on it:

In a common scenario, BizTalk enables companies to integrate and manage business processes by exchanging business documents such as purchase orders and invoices between disparate applications, within or across organizational boundaries.

fatcat1111
Thanks for that answer. So what is the difference between sending a message to a disparate system vs just invoking a web service on that disparate system to send a purchase order for example?
TheNoob
One major difference is that MSMQ requires full knowledge of the endpoints and message format. Web services have (supposedly) self-describing schema, and support discovery (e.g., the WS-Discovery protocol). But they're not mutually exclusive: WCF (which supports web services) can employ MSMQ endpoints. Think of MSMQ as a transport channel, like named pipes or TCP, and a web service as something that employs that channel, along with other features like a runtime and activation.
fatcat1111
A: 

For one, the System.Messaging namespace uses MSMQ as the underlying MOM. I am not too familiar with Biz-talk so I will let others comment on that one. Personally for messaging, I would go the route of QPID, but it really depends on what you are trying to do.

Rob Goodwin