企业服务总线(ESB)遵循服务导向型架构(SOA)原则。
SOA 是一种软件开发方法,使用称为服务的软件组件来创建业务应用程序。每项服务提供一种业务能力,多项服务也可以跨平台和语言相互通信。
ESB 平台提供用于应用程序彼此交互的通信服务。一些示例包括消息转换、协议转换、路由和身份验证。
(AWS 上的 ESB 实施)
接下来,我们将讨论 ESB 架构的关键组件。
端点
在 ESB 架构中,可以将端点看作是 ESB 的入口或出口。
通常,每个端点都有一个唯一的地址或标识符。您可以使用各种技术来实施端点,例如 Web 服务接口、消息队列或 FTP 服务器。端点还可以处理不同的消息类型,例如 XML、JSON 或二进制数据。
端点架构的灵活性允许 ESB 与各种系统和应用程序集成。
适配器
ESB 工具中的适配器组件可在不同的格式和协议之间转换消息。这意味着接收方软件应用程序可以正确使用它们。它还可以提供消息记录、监控、身份验证和错误处理等功能。
总线
总线是用于端点间消息交换的核心 ESB 组件。它使用一组基于各种标准(例如消息类型、内容或目的地)的规则或策略来路由消息。
您可以在 ESB 配置中定义策略以满足复杂业务流程的要求。它使用各种通信协议(例如 HTTP、JMS 和 FTP)与端点通信。
总线的工作原理如下:
总线在一个端点接收消息
它通过检查业务策略规则来确定目标端点的地址
它处理消息并将其发送到目标端点
例如,假设总线从连接到端点 A 的应用程序接收 XML 文件。它决定将 XML 文件发送到端点 B 和 C,端点 B 需要 JSON 数据,而端点 C 需要 HTTP Put 函数。适配器将 XML 文件转换为 JSON,然后总线将其发送到端点 B。总线在端点 C 上使用 XML 执行 HTTP 请求。