Queued Calls

Queued calls are yet another way to achieve reliability in a distributed system. When you send messages using a classic request/reply pattern, the response traditionally indicates if the request was successful, or not. In the case of one-way messages, no response is provided, thus it is difficult to be sure that the message arrived at its destination, and that it was processed successfully. By definition, with one-way calls, you probably care less about the success of the call (given that there isn’t a reply), but you do care that the message arrived. Unlike reliable sessions (discussed earlier), queued calls make it possible to not only guarantee arrival of a message, but guarantee that the message will not be lost since it can be stored in a durable message queue. MSMQ is the Windows technology that supports this type of durable and reliable messaging. WCF provides a standard binding for MSMQ protocol so that your services can expose this functionality where appropriate.

MSMQ Overview

Microsoft Message Queue Server (MSMQ) is a durable, reliable messaging technology for the Windows platform. MSMQ 3.0 is an optional Windows component that can be installed on your Windows XP or Windows Server 2003 machines, while MSMQ 4.0 is an optional Windows component for Windows Vista and Windows Server 2008.

You can incorporate MSMQ in your applications to achieve the following:

  • Guaranteed message delivery even when the receiver is offline.

  • Transactional delivery of messages whereby ...

Get Learning WCF now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.