In this sample scenario we are combining the use of an EAI Bridge in the cloud and Azure Service Bus Relay. Imagine a scenario where we need to expose a bridge with an endpoint which one of our website applications can make a REST style call to the bridge posting some XML data to the bridge. The bridge needs to transform the data to a format compatible with services exposed from our line of business systems on premise. To reach the on premise line of business system we will be using the Azure Service Bus Relay which will also use the WCF Routing Service as an on premise listening component which will route the call through to the line of business system. The response from the call will flow back to the EAI bridge which will map the response and return data to the website.
The technologies used in this sample include:
- BizTalk Services EAI Bridge
- Azure Service Bus Relay
- WCF Routing Service
- Windows Server AppFabric Hosting
A diagram showing this scenario is below:
In this scenario the EAI Bridge plays the role of a cloud hosted messaging bridge which can manipulate the data and host an endpoint which is accessible to the website. The Azure Service Bus Relay is used to bridge the connectivity between the cloud and on premise. The WCF Routing Service is used as an on premise listener to the Azure Service Bus because we can not make any changes to the line of business application to make it listen directly but using the WCF Routing Service is an easy way to listen for calls on the relay and to forward them to the existing services.
Although this sample may look like it has a few moving parts the solution is actually pretty simple from a technical perspective. The Azure Service Bus Relay and WCF Routing Service components are things which are really easy to setup and have a very low cost so for many customers this would be a good way to connect the on premise application to the cloud in a secure and managable way.