Using ESB for Enterprise Application Integration
The term Enterprise Service Bus (ESB) has generated a lot of curiosity among business owners and IT stakeholders. Though the term has been present for quite some time now, confusion over its purpose of existence still prevails.
To move further, we need to first understand the concept of enterprise application integration (EAI). In simple terms, EAI is an approach for interconnecting all the disparate applications present in an enterprise IT environment. The concept has assumed importance over the years, as businesses have begun to utilize Information Technology extensively for carrying day to day operations.
Some of the approaches that have been used to bring about integration across the enterprise’s IT architecture include Point to Point integration, Hub and Spoke integration and the Enterprise Service Bus framework, among others. In this post, I intend to specifically speak about, and offer a comparison of these approaches.
In a Point to Point integration approach, all individual applications are linked using special ‘adapters’. The number of integration links is exponentially proportional to the number of applications present in the Architecture. To deploy new applications or modify existing ones, the entire system is affected.
In a Hub and Spoke Architecture, applications are connected with each other through a centralized ‘hub’. ‘Spokes’ provide the required connectivity between the Hub and the applications.
The major risk in a Hub and Spoke Architecture is the extreme dependence on the hub. If the centralized hub fails, operations come to a halt.
Krawler Enterprise Service Bus offers distinct advantages as compared to the Hub and Spoke & Point to Point architectures.
Enterprise Service Bus is an integral part of the SOA Framework. It uses an open standards based common messaging protocol for enabling enterprise wide integration. There are many definitions of ESB available across the web and literature. Here, I present some of the basic characteristics:
So what exactly does the ESB do? At the basic level, the enterprise service bus primarily performs the following functions:
Routing – Selecting a network path for delivering messages.
Invocation – Making a request or invoking responses from service/application producers and consumers, and
Mediation – Communicating with all resources and translate message, protocols, and data in required format.
Difference between Krawler ESB and other EAI approaches:
EAI approach (Point to Point solution, Hub and Spoke Architecture)
Monolithic, Proprietary standards
Centralized framework enables comparatively simple and easy control
Integrated and distributed framework requires comparatively complex control mechanism
Single point of failure make it less reliable
Reliability is high due to absence of single point of failure
Comparatively high cost due to various factors such as use of proprietary standards, employment of multiple connecting links, complex maintenance issues and specialize training requirements.
Comparatively lower cost due to factors such as use of open standards and easy maintenance, among others.