In this section we will look at the BizTalk ESB Toolkit technology.
What is it?
The BizTalk ESB Toolkit is an add on for Microsoft BizTalk Server which gives you additional features to develop solutions using the ESB architecture style. Using ESB Toolkit you can develop BizTalk solutions in a more componentised way and use the itinerary feature to define which services are utilized to process a message. The intention for the ESB Toolkit is to give you the ability to move away from the typical hub and spoke integration architecture as shown below:
Towards an ESB style architecture as shown by a classic representation of the ESB below:
The main features of ESB Toolkit are:
- Itinerary based routing allows the development of policy driven service mediation to allow you to compose together services in a light weight way to process a message
- Dynamic endpoint resolution
- Exception Management portal
The key strength of the ESB toolkit is that it can allow you to deliver more dynamic and powerful solutions with BizTalk and to create better reuse in certain types of integration project.
The main weaknesses of the ESB Toolkit are:
It has a reputation of being complex and lacking documentation (refer to recommended reading below if you need help)
It is not part of the core BizTalk install and is an add on which makes people skeptical about how serious Microsoft are about it
It has a steep(ish) learning curve to get good value from it
The ESB Toolkit requires a BizTalk Server installation for it to be deployed to. You can not use the toolkit in isolation without BizTalk Server.
The ESB Toolkit is a free add on which comes on the BizTalk Server installation media.
The following articles are recommended reading to findout more about this technology:
- Extending the ESB Toolkit – Tomasso Groenendijk on Integration Monday
- Pluralsight Course on ESB Toolkit – Stephen Thomas
- To ESB Toolkit or not – Tomasso Groenendijk
- BizTalk Server ESB Survival Guide – Technet Wiki
BizTalk ESB Toolkit still works in BizTalk 2020 and has continued support inline with the BizTalk roadmap but ESB Toolkit really feels like an idea Microsoft regret doing and is something they only support for Legacy. There has been no investment in it for a significant period and I would not use it for new stuff and I would look to simplify solutions which use it where possible by moving to other options