What is an ESB?
An Enterprise Service Bus (ESB) is fundamental architecture. It is a set of rules and principles for integrating numerous applications together over a bus-like infrastructure. ESB products enable users to build this type of architecture, but vary in the way that they do it and the capabilities that they offer. The core concept of the ESB architecture is that you integrate different applications by putting a communication bus between them and then enable each application to talk to the bus. This decouples systems from each other, allowing them to communicate without dependency on or knowledge of other systems on the bus. The concept of ESB was born out of the need to move away from point-to-point integration, which becomes brittle and hard to manage over time. Point-to-point integration results in custom integration code being spread among applications with no central way to monitor or troubleshoot. This is often referred to as "spaghetti code" and does not scale because it creates tight dependencies between applications.
An Enterprise Service Bus (ESB) is a distributed middleware system for integrating enterprise IT assets using a service-oriented approach.
An Enterprise Service Bus (ESB) is a distributed infrastructure used for enterprise integration. It consists of a set of service containers, which integrate various types of IT assets. The containers are interconnected with a reliable messaging bus. Service containers adapt IT assets to a standard services model, based on XML message exchange using standardized message exchange patterns. The ESB provides services for transforming and routing messages, as well as the ability to centrally administer the distributed system.
An Enterprise Service Bus (ESB) is an infrastructure used for enterprise integration using a service-oriented approach. Its main features are :
- It has a set of service containers, used to adapt a wide variety of IT assets to the ESB.
- It has a reliable messaging system, used to allow the service containers to interact.
- It has a standard (WSDL) services model is used for inter-container interaction. That is, all adapted assets are modeled using services. An asset can be a provider of services, a consumer of services, or both. The services model is based on message exchange.
- It uses messages that are exchanged between containers using standard message exchange patterns.
- It uses messages that consist of XML data, and message metadata.
- It provides message transformation services
- It provides message routing services
- It provides security features to control access to services
- It is centrally administered, despite being a distributed system.
- It allows incremental changes to services without requiring shutdown or other disturbance to system availability.
Benefits :
- Do More Faster, Spend Less : Develop and deploy applications and services faster, at reduced cost using a model-driven environment that requires minimal to no coding
- Boost Communication : Mediate the communication between applications and services by routing and transforming disparate data formats and transport protocols
- Reduce Complexity : Reduce interoperability between heterogeneous applications and technologies and promote the seamless exchange of real-time information across the enterprise
- Regulate Change : Mitigate the impact of interface changes by simplifying the process: promote the loose coupling of applications through well-defined service contracts
- Enhance Visibility : Easily monitor failure and manage misbehavior in highly complex systems – especially when components need to be changed
- Promote Reuse : Extract greater value from legacy assets by exposing them as services – and add new functionality without costly system migration and redesign efforts
- Stay Vendor Free : All of our integration solutions share a common runtime environment, which means you won't need to stay tied from any one vendor's environment