Introduction
We’re now looking at Hybrid BizTalk/Azure design opportunities. Starting off, a review of service bus messaging options:
Service Bus Messaging
- Queues
- Topics, and,
- Subscriptions
Queues are per standard queuing theory, message on – message off (FIFO). Topics are a like a digest of messages distributed, and subscriptions are a bit like an opt-in message delivery.
Message body is ignored, body can therefore be encrypted etc. Message body is passed through, only exposed data concerns routing information.
Both Azure and Windows Server 2012 (on-premise) now support the Service Bus, which now incorporates the AMQP messaging protocol (OASIS standard), for better interoperability, e.g. potentially with Rabbit MQ for distribution to Java, etc.
Coming soon – the ability to post to a Queue which will “forward to” a topic inside Azure.
BasicHttpRelay and NetTcpRelay (Azure Relaying)
Relaying is designed to work around inbound firewalls and the ability to resolve to hosts. Includes ACS security and provides excellent HA/DR potential as endpoints do not need to shift when hosts/services are re-delegated.
The inbound connection provides a callback URL which can be used to push notifications to interested parties.
WebHttp (REST)
Provides excellent support for thin clients, web based applications and lightweight web APIs.
What is a Hybrid Solution?
It is a combination of many options and configurations, and is not limited to simply on-premise integrated with Azure.
BizTalk Services
Formerly known as the EAI Labs, BizTalk Services are targeted at B2B, SaaS marketplaces.
Provides a scalable rapid development environment to provide a greater degree of agility. Supports custom code and extensibility. BizTalk Services are a managed service with user control with SLA and resource guarantees.
There are different tiers of service. Runs as a dedicated service, hosted and managed by Microsoft within a subscription model. Contains health and application monitoring (user controlled).
Drag and drop integration solution, contains EAI Service, B2B Service on an extensible platform. Includes a BizTalk Server 2013 Standard license for synch using a line-of-business adapter for on-premise use.
Pricing is still a bit cost-prohibitive (will add a link later), but may stabilize.
BizTalk Service Deployment [Demo]
To deploy a BizTalk Service solution, you require a number of things:
- SQL Server (Tracking DB)
- Access Control Service (ACS)
- Storage Account (monitoring store)
- SSL certificate (can use self signed cert or commercially issued certificate)
Key Concepts
- (Azure) Portal
- Visual Studio
- B2B Service
- Bridges
- Artefacts
- Monitoring
- Storage
Sources = FTP/S, HTTP, SFTP
Bridges = 3 part processing unit: Sources/Pipeline/Destination (contains activities and properties), rule based routing
Destinations can be a Service Bus (relay, queue, topic), SFTP/FTP(S), HTTP, Blob, a Web Service.
BizTalk Services utilizes a new transform/mapper and there is a tool available (BTMMigrationTool) which can convert existing BizTalk maps to the new Services maps (but not back!).
Data received follows the following flow into BizTalk Services:
1. Data and format match
2. Protocol bridging
3. Security
4. Scale
5. Manageability