In this chapter we've explored the concepts of message queuing, and seen how they are implemented in Microsoft Message Queue Server (MSMQ). Message Queuing provides two major advantages in distributed applications:
We looked at each of these features in turn, and saw in overview how we can take advantage of them in a Windows DNA-based application. We then went on to examine MSMQ in more detail, to understand how it works and how we use it in our own applications.
Finally we put MSMQ to the test, both by using the tools that are supplied with it, and by adapting a simple component (which we first met back in Chapter 2) to use its basic features. This shows how easy it is to implement, requiring only a few lines of code for each process we carry out.
Message Queuing is a broad topic, and one that we can't cover the full ramifications of in one chapter. However, we have indicated why it is so useful, and how we can use it ourselves to provide better response and improved reliability when we create distributed applications—especially those that rely on transaction servers such as MTS.
In the next chapter, we'll implement the messaging features you've seen in this chapter in our sample Wrox Car Co application. This will include a practical example of how we can combine message queuing with transactions controlled by MTS.