本文主要介绍一些开源和商业的ESB产品:
Mule:
特点:轻量级的消息框架和整合平台,基于 EIP 实现。支持 20 多种传输协议,整合了 Spring、ActiveMQ 等多个流行开源项目。核心组件 UMO(后来被 Componse 代替)用于实现整合逻辑,可使用 POJO、JavaBean 等。具有灵活性、高效性和易开发性。 应用案例:被 Walmart、HP、Sony、Deutsche Bank、CitiBank 等众多公司使用。
Apache ServiceMix:
特点:是 JBI 规范的一种实现,包含许多支持多种协议的 JBI 组件,也实现了 EIP、规则和调度。整合了 Apache ActiveMQ、Apache CXF 等多个开源项目。 发展历程:2005 年末成为 Apache 孵化项目,2007 年 9 月成为 Apache 顶级项目。
Open ESB:
特点:由 SUN 发起,是Java.net的子项目,实现了 JBI 规范。可运行在 Glassfish 应用服务中,Netbeans IDE 为其提供拖拉式开发工具,这是其相比其他开源 ESB 的优势。
Apache Synapse:
特点:本质上是一个 Web 服务仲裁框架,构建在 Apache Axis2 之上。关注点是路由、转换、消息验证以及基于 Web 服务和 XML 标准的注册。支持多种传输协议和 Web 服务规范,还支持多种流行语言。
WSO2 ESB:
特点:基于 Apache Synapse 产品,可在 Web 服务、REST/POX 服务以及遗留系统间连接、管理和转换服务交互。提供基于 AJAX 的 ESB 管理控制台,用于配置文件的统计分析、管理等。基于 WSO2 的 Carbon 平台,支持集群、负载均衡、故障转移路由、流量控制和数据缓存等企业级特性。
Oracle Service Bus (OSB):
特点:开发工具从 Web Console 迁移到 Eclipse,支持图形化拖拽和调试,在 studio 上直接集成测试功能。嵌入 Oracle Coherence 产品,可为服务调用提供缓存,提升性能。采用自动化的生命周期服务治理,与 Enterprise Repository 产品自动同步。将各种协议接入的消息统一转换为 SOAP Message,再进行 XML 操作。
WebSphere Enterprise Service Bus:
特点:属于 IBM 的企业级 ESB 产品,集成在 WebSphere 软件平台中,与 IBM 其他产品(如 WebSphere Application Server)有良好的兼容性和集成性。提供了丰富的功能和工具,用于构建、部署和管理企业级服务集成解决方案,具备强大的消息处理、转换和路由能力,支持多种通信协议和数据格式。
WebSphere Message Broker:
特点:为管理员提供专用的管理工具 WebSphere Message Broker Explorer,可管理本地和远程的 broker 和 queue manager,并监控性能和消息流。采用基于模式的开发方式,将常用消息流场景模板化,分为内置和自定义模式。使用 ESQL 语言处理消息流,功能丰富但学习门槛较高。
ActiveMatrix Service Bus:
特点:是 TIBCO 公司的 ESB 产品,具有高性能、高可靠性和可扩展性。提供了丰富的服务质量(QoS)功能,如消息优先级、事务处理、可靠消息传递等。支持多种通信协议和数据格式,能够与 TIBCO 的其他产品以及第三方系统进行无缝集成。
Sonic ESB:
特点:是 Progress 公司的产品,具有高效的消息处理能力和灵活的路由机制。提供了可视化的开发和管理工具,方便开发人员进行服务集成的设计和部署,支持多种操作系统和应用服务器,具有较好的跨平台性。