Enterprise Service Bus (ESB)¶
The Enterprise Service Bus (ESB) is a 中心化 (centralized) implementation of the [[Service-Oriented Architecture (SOA)|SOA]] paradigm^[600-developer-principle-soa-esb-microservice.md, 600-developer__principle__SOA-ESB-MicroService.md]. It is designed to function as a heavy, centralized integration architecture that manages the interaction between service consumers and service providers^[600-developer-principle-soa-esb-microservice.md, 600-developer__principle__SOA-ESB-MicroService.md].
Core Functionality¶
The primary requirement of an ESB is to solve the connectivity issues between heterogeneous systems^[600-developer-principle-soa-esb-microservice.md, 600-developer__principle__SOA-ESB-MicroService.md]. To achieve this, the ESB facilitates the transfer of data from service providers to service consumers through several key mechanisms^[600-developer-principle-soa-esb-microservice.md, 600-developer__principle__SOA-ESB-MicroService.md]:
- Protocol Conversion: Translating between different communication protocols.
- Message Parsing: Interpreting the format and content of messages.
- Message Routing: Directing messages to the correct destination endpoints.
Because it centralizes these communication tasks, the ESB is capable of handling and resolving common logic problems shared across different services^[600-developer-principle-soa-esb-microservice.md, 600-developer__principle__SOA-ESB-MicroService.md].
Characteristics¶
While ESBs are described as "heavy" architectures due to their centralized nature and processing overhead, they serve a distinct role compared to decentralized alternatives like [[Microservices]]^[600-developer-principle-soa-esb-microservice.md, 600-developer__principle__SOA-ESB-MicroService.md].
Sources¶
600-developer-principle-soa-esb-microservice.md600-developer__principle__SOA-ESB-MicroService.md