Short for Enterprise Service Bus, also referred to as a message broker. ESB is an open standards-based distributed synchronous or asynchronous messaging middleware that provides secure interoperability between enterprise applications via XML, Web services interfaces and standardized rules-based routing of documents.
In practice, this means that data files are passed to and from their destinations based on established guidelines that are common to all parties sharing the information to ensure that the data maintains its integrity as it is routed. The multi-language and multi-platform design of an ESB allows enterprises to process data between applications from various sources. Two common distributed computing architectures used by ESBs are J2EE and .NET.
ESB is an extension of EAI, an earlier form of middleware, but ESB adds several key functions:
- transformation: The ability to transform XML documents from one data format into another so that the receiving party can interface with the data in an application format that is different from the one in which it is sent.
- portability: The ability to share the data between different computer systems and operating environments.
- load balancing/clustering: The ability to distribute processing among several devices so that no one device becomes overloaded
- failover: The ability to transfer messaging functions to another server if one should fail during the data exchange.
Sonic ESB, Cape Clear Server and PolarLake Jintegrator are examples of commercial ESB products.