Enterprise Service Bus
An enterprise service bus (ESB) is implementing a communication system between mutually interacting software applications in a service-oriented architecture (SOA). It implements a software architecture as depicted on the right. As it implements a software architecture for distributed computing, it implements a special variant of the more general client-server model therefore also. Whereas in general any application using ESB can behave as server or client in turns. ESB promotes agility and flexibility with regard to high protocol-level communication between applications. The primary goal of the high protocol-level communication is enterprise application integration (EAI) of heterogeneous and complex landscapes.