
开源 ESB-ServiceMix
5
SOA 中正确管理您的业务流程至关重要的组件。ESB 本身可以是单个
引擎,甚至还可以是由许多同级和下级 ESB 组成的分布式系统,这些
ESB 一起工作,以保持 SOA 系统的运行。在概念上,它是从早期比
如消息队列和分布式事务计算这些计算机科学概念所建立的存储转发
机制发展而来的。
2.2 ESB
ESB 作为一个中间件, 支持分布、异构环境中的服务、消息,以
及基于事件的交互,并且具有适当的服务级别和可管理性。但是目前对
于 ESB 还是没有一个严格的定义或者标准来限定。
被普遍认同的 ESB 定义是:
• ESB 是一种逻辑体系结构组件,它提供与 SOA 的原则保持一致的集
成基础架构。
• ESB 可以作为分布式的异构基础架构进行实现。
• ESB 提供了管理服务基础架构的方法和在分布式异构环境中进行操
作的功能。
最低的 ESB 功能:
• 通信
提供位置透明性的路由和寻址服务,控制服务寻址和命名的管理功
能,至少一种形式的消息传递范型(例如,请求/响应、发布/订阅等等),
支持至少一种可以广泛使用的传输协议
• 集成
支持服务提供的多种集成方式,比如 Java 2 连接器、Web 服务、
异步通信、适配器等等
[9]
• 服务交互
一个开放且与实现无关的服务消息传递与接口模型,它应该将应用
程序代码从路由服务和传输协议中分离出来,并允许替代服务的实现。
ESB 产品的出现也加速了 EAI(Enterprise Application Integration)向遵