- JBoss Fuse 教程
- JBoss Fuse – 首页
- JBoss Fuse - ESB 简介
- 什么是 Fuse?
- JBoss Fuse – Apache Karaf
- JBoss Fuse – Apache Camel
- JBoss Fuse – Camel 概念
- JBoss Fuse – Apache CXF
- JBoss Fuse – REST Web 服务
- JBoss Fuse – Apache AMQ
- JBoss Fuse – Camel 与 AMQ
- JBoss Fuse – Fabric
- JBoss Fuse – 子容器
- JBoss Fuse – 问题与解决方案
- JBoss Fuse 有用资源
- JBoss Fuse - 快速指南
- JBoss Fuse - 有用资源
- JBoss Fuse - 讨论
JBoss Fuse - ESB 简介
本章我们将从企业服务总线 (ESB) 的基本概念开始。下面是关于 ESB 的详细解释,包括其优点、缺点以及一些便于理解的图表。
什么是 ESB?
ESB 代表企业服务总线 (Enterprise Service Bus)。简单来说,ESB 是一种中间件,充当信息高速公路,帮助多个应用程序进行通信。
在企业世界中,我们为许多事情开发解决方案。这些解决方案可能使用不同的技术和不同的数据格式。由于这些技术的通信或数据格式的兼容性差异,将这些解决方案结合使用变得非常繁琐。因此,我们需要一种技术来允许这些不同解决方案之间的松散耦合集成。
ESB 旨在通过成为位于所有应用程序中间的“中心”,并促进它们之间的消息路由来简化这个集成问题。ESB 充当媒介,作为信息高速公路,负责数据转换和路由,让程序员或开发人员专注于自己的应用程序逻辑。
当我们理解 ESB 为其特别设计的解决的问题时,理解 ESB 就变得非常简单,解决方案也变得容易。应该清楚地了解如何使许多不同的系统(使用不同的语言编写,在不同的机器上运行,使用不同的数据格式)能够共享信息并形成一个集成的业务平台。
集成问题
在企业平台中,多个应用程序协作并整体提供业务功能是很常见的,但是这些应用程序的集成是最常见的问题。随着应用程序的增长,这个问题会变得更加困难。
每个应用程序可能使用自己的格式输入和输出数据。如果应用程序数量较少,这种方法效果很好,但是随着应用程序数量的增加,也需要采用更好的方法来改进集成。例如,如果业务的特定应用程序需要更改,则所有依赖于该主应用程序的应用程序的输出或输入数据格式都会受到影响。
这种方法是集成面临的最大障碍,集成需要紧密耦合的架构。这就是 ESB 发挥作用的地方。每个应用程序不需要直接与其他应用程序通信;相反,所有应用程序都与 ESB 通信,ESB 处理信息的路由和内部数据格式转换。
为什么选择 ESB?
以下几点解释了为什么企业服务总线至关重要。
ESB 旨在简化具有不同兼容应用程序的集成问题。
它充当中间件,作为所有应用程序的媒介,并促进它们之间的消息路由。
每个应用程序不再直接与其他每个应用程序交互,而是现在只有一个与 ESB 的接口。
ESB 负责将消息转换为/从通用格式转换,并将它们路由到其目的地。
如果必须替换任何现有应用程序,这种方法的主要优势就体现出来了。您现在只需要关注一个接口(应用程序和 ESB 之间),而不是编写大量新的接口。
SOA 与 ESB?
SOA 和 ESB 通常可以互换使用,但它们完全不同。
SOA 是一种设计模式,允许应用程序通过通信协议在网络上公开其功能作为服务,而 ESB 是一种促进不同系统之间通信的模型,但在实现 SOA 时,ESB 可以用作主干。