The London BizTalk Summit 2015 is over and we’ve enjoyed every minute of it. Below you can find our view on today’s sessions. Be sure to check our day 1 recap of yesterday in case you missed it: London BizTalk Summit 2015 - Day 1 recap
The second day was more focused on developers - not admins ;-) - and started with a number of short back-to-back sessions.
Don’t hesitate to put questions or remarks in the comments part of this blog.
Hybrid Solutions with the current BizTalk Server 2013 R2 platform
Speaker: Steef-Jan-Wiggers, (https://twitter.com/SteefJan)
Steef-Jan had the honor to kick off the second day of the BizTalk Summit 2015.
In the fast changing world of technology, we - as integration people - are constantly triggered with new challenges and opportunities, this forces us to modernize our look at integration.
The focus of Steef-Jan during his session was to demonstrate how to tackle some of these challenges with BizTalk Server 2013 R2.
He showed us how easy it is to consume REST services from BizTalk and how the BizTalk tools facilitate us to work with JSON files.
10x latency improvement – how to squeeze performance out of your BizTalk solution
Speaker: Johan Hedberg (https://twitter.com/johed)
In this session Johan analyzed a real-life case of an overarchitected BizTalk solution that required optimization to improve latency and throughput. I’ve listed some of the improvements Johan touched below:
- Reduce MessageBox hops by nesting orchestrations
- Consider levels/layers of reuse by using canonical processes and methods
- Memory is cheap, so consider caching your data
- Host Management is important, consider host separation, tweaking throttling settings, tweaking polling interval,…
- Custom Performance Counters to quickly identify where the bottleneck of your application is
- Optimize your Orchestration Persistance Points
Be aware, none of these improvements is the real silver bullet. The most important is that you know your solution and you know your requirement and act upon them.
DEV – TEST – TUNE - REPEAT
Johan will do a more detailed session on performance optimizations on Integration Mondays next week! (http://www.integrationusergroup.com/)
BizTalk Server tips and tricks for developers and admins
Speaker: Sandro Pereira (https://twitter.com/sandro_asp)
As BizTalk Developers and BizTalk Admins it’s important to maintain the health of the platform and to have tools and techniques to produce efficient integration solutions.
Sandro took us on a trip around some useful BizTalk Server tips, tricks and workarounds for both developers and administrators. In the meanwhile he took the opportunity to bash the BizTalk administrator Tord Glad Nordahl, a good friend of his, which led to some funny situations during his session.
One of the more interesting tips was a tool Sandro created to clean out the BizTalk MarkLog Tables as BizTalk does not provide an out of the box solution for this. You can download and try this tool on following location: https://gallery.technet.microsoft.com/BizTalk-Server-Cleaning-15a1b070
Due the lack of timing Sandro could not cover every tip/trick so be sure to check out all of this valuable information when the slides come online.
Power BI tool
Speaker: Tord Glad Nordahl (https://twitter.com/tordeman)
A session by a BizTalk admin for BizTalk admins but Tord was mainly trying to convince the developers to make nice graphs using PowerBI instead of looking at pure data: an honorable, but difficult mission.
PowerBI has recently been released globally (GA) for any platform. It’s a cheap tool (10USD per month per user) which allows you to manipulate data in an easy way to show nice dynamic graphs.
You can grab data from many different types of sources (SQL, CSV … ) to make reports. In a BizTalk scenario you could use the tracking database to show the business performance graphs about certain flows running in your BizTalk environment.
Basically it comes to this: grab whatever data you want from any source you want, merge, customize and create nice graphs to keep the business guys happy.
Microservices and the cloud-based future of the integration
Speaker: Charles Young (https://twitter.com/cnayoung)
Next up was Charles Young who gave us a very enthousiastic and passionate session around µServices and the evolution of architecture leading up to the µServices. I felt Charles did a great job of explaining this and looking at the crowd there, he certainly shared his enthousiasm with them.
Charles talked from an architecture viewpoint and explained why moving from an ESB architecture to a µServices architecture can be a good idea. He explained the move from layered to hexagonal architecture and how µServices picked up on this idea.
With µServices it is important to keep sure the layered architecture is maintained and boundaries are kept so you don't have the pitfall of too tightly coupling your services and applications.
He explained how important it is to standardize the interfaces using SOAP or REST and how a lot of established and upcoming services are built around this principle of API's.
The aspirations of µServices are:
- Simplicity: chop up complex things and make them easy to reuse.
- Velocity: allows to speed up development.
- Evolution: allow quick change by gathering the building blocks to form an application.
- Democratisation: allowing a mild learning curve and the ability to expose something to the public quickly.
From monolothic design to µServices: services are too chunky and need to be decomposed into finer grained µServices
It is important to organize your services around business capabilities from front-end to back-end, so one builds a nice stack from front-end to back-end. You also need to be able to deploy, host and version the µServices independently and try to use lightweight communication. Keeping it simple and fast.
Avoiding centralized governance and management will for example allow a cross-platform approach.
And as a last item: really try to focus on rapid re-use of the µServices. Which comes back to the first point: fine-grained services accomodates this.
Later on in the session Charles - from a pure architectural standpoint in this session - was talking about the limitations around the Microsoft stack as well, which made sense.
As a closer, a quote from Charles which made a lot of sense:
"It's not because µservices is the new buzzword that we should leave our brains at the door."
Migrating to microservices
Speaker: Jon Fancey (https://twitter.com/jonfancey) & Dan Probert (https://twitter.com/probertdaniel)
Jon started off with some slides to convince the audience to move their flows from on premise to µservices in the cloud with the following arguments:
- In the cloud you have more flexibility with the “pay as you go” pricing models and the easy scaling possibilities.
- iPaas (integration Platform as a service) allows you to have an environment that needs less management and the µServices can be easily updated.
After that, he continued by explaining step-by-step the equivalents between the cloud components and the on premises building blocks:
- A workflow can be considered as a Logic App
- Maps are converted into BizTalk API App Transforms. An MS-tool exists to do this conversion but XSLT is also supported or you can host the map as-is using an API app which allows you to use XSLT 2.0!!!
- The Business Rules Engine becomes a Rules API App with a portal-based designer.
- Trading Partner Management is not yet covered but MS is looking into developing a tool for this.
- Pipelines become Logic Apps where the Pipeline Components are converted into API Apps.
Dan Probert then took over to announce their new initiative: The Migration Factory
They created a tool to migrate full on premise applications to µServices cloud solutions!
By exporting the MSI and uploading it to their tool, you’ll get a Logic App and API Apps with similar functionality where adapters become connectors, the message box becomes a Service Bus API App etc...
As they didn’t cover everything yet and probably won’t be able to due to technical limitations, on the website you'll get a report with the parts that will be converted and a to-do list of what you should convert yourself.
BAM does not exist in the cloud and tracking can be done using the infrastructure REST API.
More information can be found here: http://migrationfactoryholding.azurewebsites.net/
Azure API Management Part 1 and Part 2
Part 1 Speaker: Kent Weare(https://twitter.com/wearsy)
Part 2 Speaker: Tomasso Groenendijk (https://twitter.com/tlagroenendijk)
The first session in the afternoon was covered by Kent Weare
He started off explaining the difference between an API and WebAPI. The main difference is WebAPI is about HTTP, is RESTful, uses (preferably) JSON (or XML) and Swagger.
Kent showed us how APIs are on the rise. A lot of new public APIs are coming out each day. Which makes you wonder how much APIs are still internal: it's just the tip of the iceberg. More and more APIs will be coming out due to the growth in mobile applications and services, IoT, big data, etc...
Kent then surprised us with a nice comparison with the concept of a Bouncer or a doorman as an API management solution.
Taking care of:
- Authentication and authorization (API security)
- Policy enforcement (Play by the rules)
- Analytics (Being able to see how much calls were made by who)
- Development Engagement (Allowing other systems/services to connect to your application/service makes it more usable and integration friendly).
- Agility (being able to quickly adapt the the business)
Azure API Management started off when the race for API management began within the business. Microsoft acquisitioned APIphany and as such ventured into API management land.
Kent then showed us a nice demo covering things like
- Creating and provisioning in the Azure portal (not the preview)
- Defining operations
- Defining policies
- Test APIs from console
- Showing analytics
- The ease of enabling caching
- Rate Limiting
Next up was Tomasso Groenendijk who prepared a different demo than Kent earlier. The demo revolved around API Management in relation to the BizTalk ESB Toolkit patterns. The latter one being one of his favorite BizTalk tools.
Earlier during the summit, Tomasso asked - via Twitter - for participation from the audience to sign-up your API's via a customized developer portal.
Unfortunately for Tomasso his demos didn't go exactly as planned, which was very unfortunate, because he obviously spent a lot of time preparing this. He touched Azure API Management, Azure websites, Azure SQL Database and even BizTalk360.
He explained us about the agility of using an ESB pattern in combination with Azure API management to quickly expose this ESB as an API. Itinerary based services and routing helps to quickly adapt to changing business need.
Azure of Things
Speaker: Nino Crudele (https://twitter.com/ninocrudele)
Nino kicked-of his session in his known style: crazy and fulll of enthousiasm.
He started with an overview of the history of integration technologies and concluded with the fact that even though technologies have evolved a lot over the years, the most used technology is still FILE as it is simple, flexible, adaptable, serializable, reliable ....
On an architecture level, you have multiple options:
- peer-to-peer (spaghetti integration)
- central common transports/connectors layer between endpoints and the integration framework
- Integration Framework contains Transport/connectors layer and endpoints use proxies of this transport/connectors layer to connect to it.
As Azure contains a lot of technologies, we could talk of an “Azure of Things” where the combined use of all those tools can bring us much more than the sum of the possibilities of each tool.
Following this small presentation, Nino presented a few demos with an architecture he created for event propagation using the Azure Event Hubs which he called JitGate (Just in Time Gate).
His demos demonstrated his framework, which is still in an early stage, but looks very promising and performant. Knowing Nino, he might blow us away during the coming year when he upgrades the framework further!
After two days packed with sessions and new information from talented speakers, we were all pretty tired and anxious to get home. We learned a lot of new things and have enough ideas to keep this blog going for at least another year!
We hope you enjoyed our small recap and are eagerly awaiting your feedback! What did you think we missed in our posts or do you have another point of view? Let us know!