Dec 3, Redmond, WA. INTEGRATE 2014, at the Global BizTalk Summit, Microsoft revealed to the public for the first time how integration is evolving as first class citizens in Microsoft Azure, later you’ll get the same benefit in the on-premise world as Azure Pack.
Note: This is not an official announcement, it’s just my take on what we have learned closely working with Microsoft and whatever announced in public today.
Future of BizTalk Server
During the summit lot of people were bit both excited and confused with some of the new terminology introduced. Whenever something new happens in the Microsoft integration space, the first question that arises is “Is BizTalk Server dead?”, let’s clarify this point bold and clear
At the BizTalk Server road map session at the end of day 1, Guru Venkataraman presented clearly Microsoft is committed to evolve BizTalk Server with a 2 years release cadence, there is a BizTalk Server update coming in 2015 following BizTalk Server 2013 R2. So BizTalk Server continues to evolve.
BizTalk server addressed the complex enterprise integration requirements for well over 10 years now, and it will continue to solve that problem for another 10+ years minimum (support for BizTalk Server 2013 R2 runs until 2023). The integration landscape is changing drastically and the tools that served the purpose in the past may not be suitable for certain modern scenarios, especially around light weight SaaS based integration.
BizTalk server is matured product with 7 major releases in the past 10 years (2004, 2006, 2006 R2, 2009, 2010, 2013 and 2013 R2). Making some drastic architectural changes in a matured product is not feasible or in some cases may be dangerous, breaking backward compatibilities and upsetting customer who invested millions of dollars. In my opinion Microsoft is making the right decisions here, evolving BizTalk server in it’s current form to support large enterprise integration scenarios and gradually investing in a completely new platform that’s catered for the new world. Over a period of time, when the new platform gets matured, we will see more and more complex integration scenarios like large message handling, ordered delivery, pure messaging, etc can be handled in the new platform. It may be a bit premature to comment or do like for like comparison between BizTalk Server and the new “App Platform – Microservices”.
In my view, both BizTalk Server and App Platform are going to co-exist together as married couples for quite some time in the future.
App Platform – Microservices
The new integration world is going to be all about Microservices and connecting them together in a workflow at a cloud scale. In a simple layman term a Microservice is nothing but a small unit of work, that’s wrapped with a HTTP/REST endpoint. You can consume that service independently or stitch them together as composite workflow. Microservice is kind of fancy name to our traditional web services to some extend.
The small unit of work performed by Microservice could be anything, examples: Transforming a message from one format to another, executing a Business Rules, Validating a schema, Authenticating a user, looking up customer data in CRM system, connecting to Salesforce, storing something in Azure blog storage etc
Internet scale integration is quite hot topic for the past couple of years, companies like IFTTT, Zapier, Azuqua are some well known names doing similar stuff (not exactly same). Microsoft offering is much different to the others, Microsoft brings powerful workflow capabilities, auto-scaling, load balancing, enterprise integration scenarios (like scatter/gather, EDI) etc
The future will look like
Microsoft BizTalk Server as IaaS + App Platform – Microservices
Microsoft BizTalk Server + App Platform – Microservices (installed on your on-premise server in the form of Azure Pack)
If you wanted to do some complex integration scenarios, you’ll rely on Microsoft BizTalk server both on the cloud as well as on-premise. For some of the modern light weight integration scenarios you’ll start using the new “App Platform”
One of the key message delivered by Scott Guthrie during the keynote is
Integration is no longer a vertical solution, it’s core to the application platform
basically every system need to talk to one another.
Future of MABS
The change in direction news might come as a big surprise for people who actively worked on Microsoft Azure BizTalk Services (MABS). I believe in the long run, Microsoft is making the right decision,. I’m really not surprised by this change in direction.
Microsoft attempted a shared BizTalk services (for platform as a service – PaaS) on the early days and changed their architecture after receiving comments from customers they need the ability to run their stuff on an sandboxed environment with custom code and no data sharing. The architecture of MABS 1.0 is not really a cloud scale PaaS (platform as a service) solution. Under the hood, completely isolated physical infrastructure (Virtual machines, storage, databases etc) are created for every new BizTalk Service provisioning. This to some extend sounded like an intermediate solution between IaaS (Infrastructure as service) and PaaS.
Microsoft is committed to support customers who are currently running on MABS 1.0 with SLA’s and they will also be working on seamless migration plans for the customer to new App Platform when it becomes available.
The new App Platform model is very simple. The workflow you define in the portal user interface is nothing but the same JSON format workflows used by “Azure Resource Manager” and the runtime hosting is done on the “Azure Websites”
Both these choices might surprise people coming from BizTalk/Workflow background, raising questions like “What happened to Workflow engine?”, and “Is workflow going to be hosted inside Azure websites?”
The main reason Microsoft is betting on these two technologies as underlying platform is due to their proven track record. The name Azure Website is bit misleading, it’s not simple IIS hosting, it’s proven as cloud scale hosting model with ability to things like load balancing, auto-scaling, instant deployment model etc. There is no point reinventing the wheel with a new hosting model.
In the same context “Azure Resource Manager” is another proven technology in Azure, which currently scales to millions of deployments like you can simply provision everything in Azure using the resource manager (ex: Create a load balanced SharePoint farm with highly available SQL backend, with specific hardware spec).
A new beginning
We need to keep in mind, this is very early stages of App Platform, it’s really an exciting time to be an integration person. Things will become more clear in the coming months, when Microsoft start revealing more and more news. Here are some key takeaways about Microservices
- Microservices can be independently versioned and will provide better side-by-side versioning
- Microservices will talk to each other through the managed API gateway, that ensures trust, security and manageability.
- The platform can take advantage of some of the current azure capabilities like auto-scaling, load balancing etc
- You can think of every BizTalk capability will evolve as a micro service, example transformation (mapping), Busness Rules, Validation, Authentication, Adapter (called connectors) etc
- The Workflows you create can be templatized and reused for matching scenarios, improving productivity
- New set of tools will evolve, example a complete web based BizTalk mapper, Workflow designer etc
- Partners and third parties will come up with lot of Microservices catered for specific needs. Example: Connectors to 100/1000’s of SaaS based systems, some unique mapping scenarios (ex EDI mapping, HL7 mapping) etc
- The parity between cloud and on-premise will eventually become a reality in Integration world
Simply sit back, relax and watch this space for next few months!! there are tons of things happing, all good for people coming from Microsoft integration background.