How to integrate a BizTalk Server application with Service Bus Queues and Topics
Microsoft BizTalk Server enables organizations to connect and extend heterogeneous systems across the enterprise and with trading partners. The Service Bus is part of Windows Azure AppFabric and is designed to provide connectivity, queuing, and routing capabilities not only for the cloud applications but also for on-premises applications. Using both together enables a significant number of scenarios in which you can build secure, reliable and scalable hybrid solutions that span the cloud and on premises environments:
- Exchange electronic documents with trading partners.
- Expose services running on-premises behind firewalls to third parties.
- Enable communication between spoke branches and a hub back office system.
I recently published an article on MSDN where I demonstrate how to integrate a BizTalk Server 2010 application with Windows Azure Service Bus Queues, Topics, and Subscriptions to exchange messages with external systems in a reliable, flexible, and scalable manner. Queues and topics, introduced in the September 2011 Windows Azure AppFabric SDK, are the foundation of a new cloud-based messaging and integration infrastructure that provides reliable message queuing and durable publish/subscribe messaging capabilities to both cloud and on-premises applications based on Microsoft and non-Microsoft technologies. .NET applications can use the new messaging functionality from either a brand-new managed API (Microsoft.ServiceBus.Messaging) or via WCF thanks to a new binding (NetMessagingBinding), and any Microsoft or non-Microsoft applications can use a REST style API to access these features.
In this article you will learn how to use WCF in a .NET and BizTalk Server application to execute the following operations:
- Send messages to a Service Bus queue.
- Send messages to a Service Bus topic.
- Receive messages from a Service Bus queue.
- Receive messages from a Service Bus subscription.
- Translate the properties of a BrokeredMessage object into the context properties of a BizTalk message and vice versa.
The following picture shows one of the scenarios covered by the article. In this context, the Windows Forms client application simulates a line-of-business system running on-premises or in the cloud that exchanges messages with a BizTalk Server application by using queue, topic and subscription entities provided by the Service Bus messaging.infrastructure.
The companion code for the article is available on MSDN Code Gallery. You can read the full article on MSDN.
References
For more information on the AppFabric Service Bus, you can use the following resources:
- “Now Available: The Service Bus September 2011 Release” article on the Windows Azure Blog.
- “Queues, Topics, and Subscriptions” article on the MSDN site.
- “AppFabric Service Bus” topic on the MSDN site.
- “Understanding Windows Azure AppFabric Queues (and Topics)” video on the AppFabric Team Blog.
- “Building loosely-coupled apps with Windows Azure Service Bus Topics and Queues” video on the channel9 site.
- “Service Bus Topics And Queues” video on the channel9 site.
- “Securing Service Bus with ACS” video on the channel9 site.