企业服务总线(Enterprise Service Bus)是企业内部面向服务体系结构的核心平台,它为SOA架构提供基础平台,表格1对当前确定的一些 ESB 功能进行了总结和分类。其中有一些功能是SOA架构的基础功能,另外的一些功能(如自动化功能或智能化功能)代表着向按需操作环境转变的重要步骤。当前的大多数场景只需要部分类别中的部分功能。ESB 实现所需的最低功能将在下面支持 SOA 的最低功能的 ESB 实现部分中进行探讨。
表格1ESB 的功能需求

通信
服务交互
路由
寻址
通信技术、协议和标准(例如MQ、HTTP 和 HTTPS)
发布/订阅
响应/请求
Fire-and-Forget,事件
同步和异步消息传递
服务接口定义(例如,Web 服务描述语言(Web Services Description Language,WSDL))
支持替代服务实现
通信和集成所需的服务消息传递模型(例如 SOAP 或企业应用程序集成 (EAI) 中间件模型)
服务目录和发现
集成
服务质量
数据库
服务聚合
遗留系统和应用程序适配器
EAI 中间件的连接性
服务映射
协议转换
应用程序服务器环境(例如 J2EE 和 .NET)
服务调用的语言接口(例如 Java 和 C/C++/C#)
事务(原子事务、补偿、Web 服务事务(WS-Transaction))
各种确定的传递范例(例如 Web 服务可靠消息传递(WS-ReliableMessaging)或对 EAI 中间件的支持)
安全性
服务级别
身份验证
授权
不可抵赖性
机密性
安全标准(例如 Kerberos 和 Web 服务安全性(WS-Security))
性能
吞吐量
可用性
其他可以构成契约或协定的持久评估方法
消息处理
管理和自治
编码的逻辑
基于内容的逻辑
消息和数据转换
有效性
中介
对象标识映射
数据压缩
服务预置和注册
记录、测量和监控
发现
系统管理和管理工具的集成
自监控和自管理
建模
基础架构智能
对象建模
通用业务对象建模
数据格式库
B2B 集成的公共与私有模型
开发和部署工具
业务规则
策略驱动的行为,特别是对于服务级别、服务功能的安全和质量(例如 Web 服务策略(WS-Policy))
模式识别