Cloud Services

CSD have just announced Release 12 (R12) of Codename BizTalk Services, Clemens has a good low-down on what’s new here. Remember BizTalk Services != BizTalk. BizTalk isn’t used in the cloud or the client – it’s just a branding thing.

The Connectivity service (relay) is an amazing piece of technology breaking down corporate boundaries and enabling true communication between organisations and people despite all of the firewalls and proxies put in place. It’s been available for a while but I’ll do a blog post on my take soon in case you haven’t seen it in action.

The big news in this release is the addition of cloud based Workflows, we are now hosting Windows Workflow in our datacenter which can run your own Sequential Workflows. You can’t use the full toolbox of usual WF activities though but a cut-down selection that the team have supplied.

These workflows as Clemens discusses on his blog are aimed towards the “service orchestration”, so a business process that you have can be modelled using a workflow and invoke any number of Internet Service Bus (ISB) services and also perform HTTP requests, workflows can also be communicated with using HTTP.

The current list of cloud activities are as follows

· CloudHttpSend

· CloudHttpReceive

· CloudIfElse

· CloudSequence

· CloudServiceBusSend

· CloudDelay

· CloudWhile

Only XOML workflows are allowed (so no code behinds here!) and if you need to do any coding you must push this into a Service that your workflow can invoke using the CloudServiceBusSend or Http activities.

You must copy/paste the XOML from Visual Studio into a HTTP form available when you sign into www.biztalk.net, clunky but effective for now!

Workflows can’t be activated through say an HTTP post but instead an instance has to be first created and then started before any activities will be executed, so if you had a workflow with a CloudHttpReceive activity at the top you would have to follow those previous steps before you can send an HTTP post to it.

There is a handy WorkflowClient class provided that means you can automate the creation and starting of a workflow instance, I’ve got a unit test that does this before communicating with the created workflow instance.

I’ll post a little sample shortly to get you going straight away but in the meantime check out the samples provided in the BizTalk Services SDK.