User Group Presentation on Hybrid Connections

Last week I had the privilege to present on Hybrid Connections at the Brisbane Azure User Group meeting. It was well attended and the community responded very enthusiastically to the ease at which this technology enables you to connect Azure Web Sites and Mobile Services to on-premises resources behind your corporate firewall. One attendee was so excited by the feature that he stayed back after the meeting with his laptop and proceeded to deploy his web site application to Azure right there on the spot, hooking it up in minutes to his on-premises database!

highres_399395482 I’d like to express my gratitude to Santosh Chandwani, a Microsoft Azure Sr. Program Manager who shared his slide deck with me and gave some very helpful tips in preparing my demo. The slides are available on SlideShare if you wish to view the presentation as I presented it, or you can download the original version that Santosh presented at Tech Ed USA.

Santosh also promptly answered some questions raised by the community which I posted on the Azure Advisors Yammer group:

Q: Seems expensive to get more than 5 HC connections?
A: “If there are specific Dev-Test scenarios where the 5 Free HC don’t suffice, please let us know.”

Q: What are the performance/load specifications? Any guidance on where potential bottlenecks may be, and/or best practice guidelines?
A: “In general, the throughput you can achieve with HC is constrained by the internet connectivity between the on-prem network and Azure. Since this is part of the user’s network infrastructure, it is hard for us to provide a specific throughput baseline.
We recommend users assess the throughput that each instance of the on-prem Hybrid Connection Manager provides on their network. Adding more instances may provide higher throughput (again depending on the network infrastructure). Also, for production scenarios, at least 2 instances are recommended for resiliency. ”

Stay tuned for an upcoming webcast about this on the BrizTalk YouTube Channel!

UPDATE: Webcast published!! View it here.

Using Azure Hybrid Connections to Consume an On-Premises WCF Service from the Cloud

Microsoft introduced Hybrid Connections a few weeks ago, a [currently] free version of BizTalk Services that allows you to seamlessly connect Web Sites and Mobile Services hosted in Azure to LOB systems residing within your organisation’s network. Similar to Service Bus Relays, there is no need to open inbound firewall ports as a locally installed agent can establish the connection to Azure from within your network. To help support this feature, Microsoft also introduced a free tier of BizTalk Services specifically to accommodate Hybrid Connections.

The most obvious question asked by most is, “Will this replace Service Bus Relays?”.  After all, they do seem very similar in concept. Michael Stephenson wrote an excellent blog post addressing this very question and identifying the key differences as well as the situations you would most likely choose one technology over the other.

What has sparked my post here is that the only examples I found highlighting this new feature were aimed at connecting to on-premises databases. While this is certainly impressive and useful (especially since your Azure Web Site can use the exact same connection string you would use for on-premises access!), it left me wondering how Hybrid Connections could be used to expose WCF Services within an internal network – without the need for configuring relay bindings.  My interest in this capability has arisen from some recent experiences building hybrid solutions for our clients:

Read more of this post

Service Bus Queue/Topic Partitioning Not Supported in BizTalk Services

The other day my esteemed colleague Bill Chesnut & I were configuring EDI agreements for a client using Microsoft Azure BizTalk Services (MABS). Because we were testing in an isolated development environment, we redirected the actual vendor routing to some Service Bus queues that we created so that we could inspect the messages.

The solution was already routing some messages to pre-existing queues (e.g. for suspended messages) and they were all working just fine. However all messages bound for the new queues we set up were failing with this error message in the tracking database:

This client is not supported for a partitioned entity. The client version should be greater or equal than version ‘2013-10’..58ca562e-49ef-4c92-823d-1a219c3f52bd_G8

This is odd… the new queues were created the same way as the existing ones were, using the “Quick Create” method in the Azure Management Portal. So what was different?

Thankfully it was Bill who remembered a relatively new feature in Service Bus – the addition of partitioned entities for increasing throughput by employing multiple message brokers and stores, introduced late last year. You can find out more details about how this works here.

Read more of this post

BizTalk Services – EDI Agreement Deployment Errors

This week I’ve been frustrated by “unknown exception” errors whilst trying to deploy an X12 EDI agreement to Windows Azure BizTalk Services. The generic message was of course extremely helpful in isolating the problem:

WABS_AgreementDeploymentError

(“Error: An error occurred while deploying the agreement. Details: Service encountered an unknown exception..”)

It happened that a recent tweet by Microsoft MVP Sam Vanhoutte proved that I wasn’t alone in my angst, as did this entry on the MSDN Azure forum. Unlike SGSJWS however, switching browsers didn’t solve my issue. Sam’s helpful advice to check all configuration items, however, did eventually lead me to closer inspection where I discovered the cause.

Read more of this post

Message Tracking in Windows Azure BizTalk Services

Tonight I was presenting on Windows  Azure BizTalk Services (WABS) to the Brisbane Azure User Group, and someone asked me where you configure message tracking. It was one of those embarrassing moments where you know you saw the feature somewhere, but can’t remember exactly where… hence this blog post.

All messages go through a bridge in WABS, which is created on a design surface in Visual Studio (assuming you have installed the Windows Azure BizTalk Services SDK, that is). It is a property on this bridge element which eluded me tonight, although I don’t know how since it is pretty clearly marked:

TrackProperties_markup

Simply select the bridge element, then click the ellipses (…) button next to the Track Properties property to open the (…. you guessed it!….) Track Properties dialog box. There you can select any properties that you have promoted in an Enrich stage of the pipeline, as well as the default XPIPELINE_MESSAGETYPE and XPIPELINE_REQUESTMESSAGETYPE properties.

It should be noted that certain properties are tracked by default, regardless of whether you select anything here at all:

  • pipeline state
  • stage state
  • whether the route destinations are successfully ascertained
  • the activity state for any message processing faults

You then have the ability to view & search on tracked message data in the BizTalk Services Portal:

TrackingPortal

Note that to get to this portal, you need to:

  1. Log into the Azure Management Portal
  2. Click on BizTalk Services on the left (just below Service Bus)
  3. Click on the Manage button at the bottom of the screen

(The first time you access this portal, you may need to enter the Issuer Name & Issuer Key with which you deployed your application, from the ACS namespace you created to associate with the BizTalk Service.)

More information about tracking can be found here on MSDN.

John Glisson - Geek of the Cloth

Thoughts on integration, technology and what-not...

prashantbiztalkblogs

My BizTalk Experiences

The CRUCIBLE

THINK: It's not illegal....yet.....

Abdul Rafay's BizTalk Blog

My experiences with BizTalk related to architecture, development and performance in my enterprise.

BizTalk musings

Issues, patterns and useful tips for BizTalk development

EAI Guy.net

Enterprise Applicaiton Integration and SOA 2.0

Connected Pawns

Mainly BizTalk & Little Chess

Adventures inside the Message Box

BizTalk, Azure, and other tools in the Microsoft stack - Johann Cooper

Biz(Talk)2

Talk, talk and more talk about BizTalk

Richard Seroter's Architecture Musings

Blog Featuring Code, Thoughts, and Experiences with Software and Services

Sandro Pereira BizTalk Blog

My notes about BizTalk Server 2004, 2006, 2006 R2, 2009, 2010, 2013 and now also Windows Azure BizTalk Services.

BizTalk Events

Calendar of BizTalk events all over the world!

Mind Over Messaging

Musings on BizTalk, Azure, and Enterprise Integration

The WordPress.com Blog

The latest news on WordPress.com and the WordPress community.