JBoss Fuse - ESB 简介
在本章中,我们将从企业服务总线的基本知识开始。下面详细介绍了 ESB 及其优点、缺点,并附上几张便于理解的图表。
什么是 ESB?
ESB 代表企业服务总线。ESB 最简单的形式是一种中间件,充当信息高速公路,帮助多个应用程序进行通信。
在企业界,我们为许多事情开发解决方案。这些解决方案可能使用不同的技术和不同的数据格式。由于这些技术中通信或数据格式的兼容性差异,将这些解决方案一起使用变得很麻烦。因此,我们需要一种允许这些不同解决方案之间松散耦合集成的技术。
ESB 旨在通过成为位于所有应用程序中间的"HUB"并促进它们之间的消息路由来简化集成问题。 ESB 充当中介,充当信息高速公路,负责数据转换路由,让编码人员或开发人员专注于自己的应用程序逻辑。
当我们理解了 ESB 专门设计用于解决的问题,解决方案也变得简单时,理解 ESB 就变得非常简单。我们应该清楚地了解如何使许多不同的系统(使用不同的语言编写,在不同机器上运行,使用不同的数据格式)共享信息并形成一个集成的业务平台。
集成问题
在企业平台中,多个应用程序协作并提供整体业务功能是很常见的,但这些应用程序的集成是最常见的问题。随着应用程序的增长,随着时间的推移,它变得更加困难。
每个应用程序都可以以自己的格式输入和输出数据。如果应用程序数量较少,这种方法效果很好,但随着应用程序数量的增长,集成也需要采用更好的方法。例如,如果需要更改某个业务的特定应用程序,则依赖于该主应用程序的所有应用程序的输出或输入数据格式都会受到影响。
这种方法是集成的最大障碍,因为集成需要紧密耦合的架构。这就是 ESB 发挥作用的地方。每个应用程序不需要直接与其他应用程序通信;相反,所有应用程序都与 ESB 通信,ESB 处理信息路由和内部数据格式转换。

为什么是 ESB?
以下几点解释了企业服务总线为何必不可少。
ESB 旨在简化与各种兼容应用程序的集成问题。
它充当中间件,充当所有应用程序的中介,并促进它们之间的消息路由。
现在,每个应用程序都只有一个 ESB 接口,而不是每个应用程序都直接与其他应用程序交互。
ESB 负责将消息转换为通用格式或从通用格式转换为通用格式,并将其路由到其目的地。
如果您必须替换任何现有应用程序,这种方法的主要节省将是一个福音。您现在只需关注一个接口(应用程序和 ESB 之间),而不必编写一大堆新接口。

SOA 和 ESB?
SOA 和 ESB 通常可互换使用,但它们完全不同。
SOA 是一种设计模式,允许应用程序通过通信协议通过网络将其功能作为服务公开,而 ESB 是一种促进不同系统之间通信的模型,但 ESB 可在实施 SOA 时用作主干。