What is Enterprise Service Bus?
Enterprise Service Bus (ESB) is a feature-rich, drag-and-drop message-oriented middle tier network layer that combines Service oriented architecture (SOA) with the message-oriented layer to address the limitations of SOA. ESB also lets you change your infrastructure by configuring and reusing ESB parameters instead of writing new code. Offered by several vendors such as the IBM WebSphere, Dell Boomi, Oracle, Mulesoft, WSO2, TALEND, Microsoft Biztalk server and Redhat JBOSS, ESB is the primary tool for enterprise integration platform.
With so many variations on the market, you want to choose your ESB solution based on cost and if it has the features you need. These features include:
- Enterprise integration platform and its patterns
- Web services support
- Message transformation
- Accept one type of input protocol and respond with different type of output protocol in understanding manner
- Content routing. Providing itinerary services end to end.
- Comprehensive SOA platform
- Message broker
- Integration with Data services server
- Integration with Analytics server
- Integration with Business process server
- Integration with Governance registry
- Integration with Applications server
- Service orchestration : co-ordination and implementation of services.
- SOA governance
- Graphical development work bench
- Support with iPaaS cloud
- Cloud and legacy connectivity
- Security & Identity
- Real time notification, monitoring
- Real time data and analytics
- Open business model.
- Standard features
- Vendor support
- User friendliness, easier drag and drop features.
- Interoperable across networks and infrastructure
- Simple and integrated tool easier enough to configure
- Necessary Connectors to have connectivity to anything to anything.
- Debugging ability
- API management
- Support with end to end integration
- Business rule engine: Business process rules are defined and implemented as per the rules
- Publish and subscribe for services
- End to end transaction management
- Content enricher: for communications when the message originator lacks the required data.
- Exception handling and fault management.
- Flexible and agile continuous integration.
As one of the best ESB tools on the market, WSO2 ESB is an open source solution that supports all of these parameters for enterprise integration platform. It does not stop with ESB alone, and supports enterprise integration through its own integration tool known as Enterprise Integrator.
WSO2 Enterprise Integrator is an excellent, open-source, end-to-end ESB solution that provides data integration, services integration, application integration, cloud support, and business analytics while keeping you under budget.
It comes as a single package with all of these modules and profiles included:
- ESB Service Integration (WSO2 ESB)
- Message broker(WSO2 MB)
- Business process(WSO2 BPS)
- Micro-services and Analytics.
- Real-time data processing (WSO2 DSS)
- WSO2 Governance registry
- WSO2 business activity monitor (BAM)
- API manager and identity server
Figure -2, Enterprise Integrator
This figure-2 shows how WSO2 Enterprise integrator version 6 works and its components.
You will find more information on what these modules, and their configuration options in our Reference documentation at the end of this document. (WSO2 Library) The configuration of different profile layers are
- Configuration of broker profile
- Configuration of ESB profile.
- Configuring API
- Configuration of MSF4J
- Set up of data service
- Configuration of business process profile
- Configuration of analytics.
Let us take one case study on enterprise integrator on end to end integration in enterprise integration platform.
Traditional approach case study
For data integration, tools take care of data integration in the heterogeneous environment of data warehouse system development. In a normal data warehouse environment, data is staged, profiled, cleaned, transformed and loaded in the data warehouse. The life cycle in quite long, taking about 8 months. Data models are needed for database design and normalized for data integration.
For data analytics, you use reporting tools on top of the data warehouse tables and to fetch data. Real-time reporting is not possible though you can reach near real time with the right configurations. This phase takes about more than 6 months to complete.
Business process integration identifies and develops business layers and processes, using business rule engines and other business processes, taking about 5 months to complete.
For security and data governance, end-to-end data management is critical and takes about 4 months.
WSO2 Enterprise lntegrator approach
The WSO2 DSS layer configures your data and data feeds with their own connectors, in real time with data steaming.
DSS also exposes your RDBMS and other data sources as services, utilizing batch operations to handle your distributed transactions, schedule tasks, and to display and data service notifications..
The WSO2 Data analytics server (DAS) layer analytics server works with Apache Spark, the open source cluster framework for large scale processing, and is 100 times faster than Hadoop Mapreduce ( WSO2 Data Analytics Server - Realtime BigData analytics ).
It works with both batch and real time data, and supports RDBMS data storage, HBase, and Cassandra, NoSQL
DSS also provides security, identity management, and governance, reducing the entire system life cycle by half or more.
Figure 3, TPS, sample measure for ESB.
This shows the number of transactions, ESB performed in a second. The indicator shows you analyze the complete efficiency of ESB in terms of request processing speed. High TPS value shows ESB handles the higher load of requests. This is necessary to understand the system is running smoothly.
More details are in:
Analyzing ESB Statistics Overview
Figure-4 shows how much ESB reduces maintenance costs. More details are referred in
WSO2 Enterprise Integrator is also a single point of contact for your enterprise level integration as well. This allows efficient risk monitoring and exception handling to avoid failures in your infrastructure.