Welcome to #8 in my series of ESB Toolkit How To Videos. If you haven’t already seen the previous videos, I encourage you to do so. The previous ones can be found here
In the past we have spoken about the concept of an Internet Service Bus (ISB) which extends the capabilities of the Enterprise Service Bus (ESB) out into the cloud. With the arrival of Windows Azure AppFabric, we are beginning to see the realization of this ISB vision. More and more organizations are using cloud based services to solve integration problems across organizational boundaries, firewalls, DMZs etc. I do believe we are rapidly approaching a world with an onsite ESB will power SOA connectivity within an organizations firewall while an ISB will extend this same functionality out onto the web and into other organizations ESBs.
Now, a number of other bloggers have already written some great posts about how to connect BizTalk up to Azure based services. If you haven’t already seen them, I strongly recommend you check out Richard’s blog and Brian’s recent blog to see how to setup this integration. Those of you who have seen the blog before know that I like to focus on the ESB Toolkit. Therefore, I’m not just going to replicate Richard’s and Brian’s work, instead I’m going to show you how to create an itinerary and resolver that can dynamically route a message to a service hosted in the Azure AppFabric using the services in the ESB Toolkit. In Richard and Brian’s blogs, they show you how to use static ports in BizTalk to achieve this. With the ESB toolkit, we really like to take advantage of dynamic ports to create reusable Off-Ramps. So what I’ll show you today is how to configure an ESB itinerary to use the reusable Off-Ramp instead of a static BizTalk port.
Amazingly, all it takes to route a message from the ESB to an Azure service is to proper configure your resolver. You don’t need to create a new type of On-Ramp or configure any new component. The ESB is ready to integrate with Azure based services right out of the box as long as you can provide the proper configuration information in your resolver. In the video, I show you which properties to configure in the resolver and how to find out what data to use in these properties.
Click here for the video
Cheers and keep on BizTalk…