Book Image

SOA Patterns with BizTalk Server 2009

By : Richard Seroter
Book Image

SOA Patterns with BizTalk Server 2009

By: Richard Seroter

Overview of this book

SOA is about architecture, not products and SOA enables you to create better business processes faster than ever. While BizTalk Server 2009 is a powerful tool, by itself it cannot deliver long-lasting, agile solutions unless we actively apply tried and tested service-oriented principles. The current BizTalk Server books are all for the 2006 version and none of them specifically looks at how to map service-oriented principles and patterns to the BizTalk product. That's where this book fits in. In this book, we specifically investigate how to design and build service-oriented solutions using BizTalk Server 2009 as the host platform. This book extends your existing BizTalk knowledge to apply service-oriented thinking to classic BizTalk scenarios. We look at how to build the most reusable, flexible, and loosely-coupled solutions possible in the BizTalk environment. Along the way, we dive deeply into BizTalk Server's integration with Windows Communication Foundation, and see how to take advantage of the latest updates to the Microsoft platform. Chock full of dozens of demonstrations, this book walks through design considerations, development options, and strategies for maintaining production solutions.
Table of Contents (18 chapters)
SOA Patterns with BizTalk Server 2009
Credits
About the author
About the reviewers
Preface
Index

Getting results from asynchronous invocations


In many cases, the "fire-and-forget" nature of asynchronous communication may be applied only to prevent client blocking, not because there is no desire to find out the result of the service call. The options for retrieving service results depend heavily on the types of service clients and expected availability of both ends of the service transactions.

Ideally, you'd want your service client to be able to make outbound calls and also host inbound ones. This sort of solution where both the client and service can send messages to each other independently is called a duplex service. In this fashion, our client could make an asynchronous call, and the service could deliver an out-of-band response event that the client would handle accordingly. However, this approach is neither interoperable nor accommodating to clients and services that are online at different times.

A service designer who is most interested in supporting the widest range of consumers...