MuleSoft - Mule ESB 简介



ESB 代表 **企业服务总线**,它基本上是一个中间件工具,用于通过类似总线的基础设施集成各种应用程序。从根本上说,它是一种旨在提供统一方式在集成应用程序之间移动工作的体系结构。这样,借助 ESB 体系结构,我们可以通过通信总线连接不同的应用程序,并使它们能够相互通信,而无需依赖彼此。

实施 ESB

ESB 体系结构的主要重点是将系统彼此解耦,并允许它们以稳定和可控的方式进行通信。ESB 的实现可以通过以下方式借助 **“总线”** 和 **“适配器”** 来完成:

  • “总线”的概念(通过 JMS 或 AMQP 等消息服务器实现)用于将不同的应用程序彼此解耦。

  • “适配器”的概念负责与后端应用程序通信并将数据从应用程序格式转换为总线格式,用于应用程序和总线之间。

通过总线从一个应用程序到另一个应用程序传递的数据或消息采用规范格式,这意味着将存在一个一致的消息格式。

适配器还可以执行其他活动,例如安全、监控、错误处理和消息路由管理。

ESB 的指导原则

我们可以将这些原则称为核心集成原则。它们如下:

  • **编排** - 集成两个或多个服务以实现数据和流程之间的同步。

  • **转换** - 将数据从规范格式转换为特定于应用程序的格式。

  • **传输** - 处理协议协商(例如 FTP、HTTP、JMS 等格式)。

  • **中介** - 提供多个接口以支持服务的多个版本。

  • **非功能一致性** - 也提供用于管理事务和安全的机制。

ESB 的需求

ESB 体系结构使我们能够集成不同的应用程序,其中每个应用程序都可以通过它进行通信。以下是一些关于何时使用 ESB 的指南:

  • **集成两个或多个应用程序** - 当需要集成两个或多个服务或应用程序时,使用 ESB 体系结构是有益的。

  • **将来集成更多应用程序** - 假设如果我们想将来添加更多服务或应用程序,那么借助 ESB 体系结构可以轻松完成。

  • **使用多种协议** - 如果我们需要使用多种协议(如 HTTP、FTP、JMS 等),ESB 是正确的选择。

  • **消息路由** - 如果我们需要根据消息内容和其他类似参数进行消息路由,则可以使用 ESB。

  • **组合和消费** - 如果我们需要发布服务以进行组合和消费,则可以使用 ESB。

P2P 集成与 ESB 集成

随着应用程序数量的增加,开发人员面临的一个重大问题是如何连接不同的应用程序?这种情况通过手动编码各种应用程序之间的连接来处理。这称为 **点对点集成**。

P2P Integration

**刚性** 是点对点集成的最明显的缺点。随着连接和接口数量的增加,复杂性也会增加。P-2-P 集成的缺点导致我们转向 ESB 集成。

ESB 是一种更灵活的应用程序集成方法。它将每个应用程序的功能封装并公开为一组离散的可重用功能。没有应用程序直接与其他应用程序集成,而是通过 ESB 集成,如下所示:

ESB Integration

为了管理集成,ESB 具有以下两个组件:

  • **服务注册表** - Mule ESB 具有服务注册表/存储库,其中所有公开到 ESB 的服务都已发布和注册。它充当发现点,从中可以消费其他应用程序的服务和功能。

  • **集中式管理** - 顾名思义,它提供了 ESB 内部发生的交互的性能事务流的视图。

**ESB 功能** - 通常使用 VETRO 首字母缩写词来总结 ESB 的功能。如下所示:

  • **V**(验证) - 顾名思义,它验证模式验证。它需要一个验证解析器和最新的模式。一个例子是符合最新模式的 XML 文档。

  • **E**(丰富) - 它向消息添加其他数据。目的是使消息对目标服务更有意义和有用。

  • **T**(转换) - 它将数据结构转换为规范格式或从规范格式转换。例如日期/时间、货币等的转换。

  • **R**(路由) - 它将路由消息并充当服务端点的网守。

  • **O**(操作) - 此功能的主要工作是调用目标服务或与目标应用程序交互。它们在后端运行。

VETRO 模式为集成提供了整体灵活性,并确保只有始终如一且经过验证的数据才能在整个 ESB 中路由。

什么是 Mule ESB?

Mule ESB 是 MuleSoft 提供的基于 Java 的轻量级且高度可扩展的企业服务总线 (ESB) 和集成平台。Mule ESB 允许开发人员轻松快速地连接应用程序。无论应用程序使用什么技术,Mule ESB 都可以轻松集成应用程序,使它们能够交换数据。Mule ESB 具有以下两个版本:

  • 社区版
  • 企业版

Mule ESB 的一个优点是我们可以轻松地从 Mule ESB 社区版升级到 Mule ESB 企业版,因为这两个版本都是基于共同的代码库构建的。

Mule ESB 的功能和特性

Mule ESB 具有以下功能:

  • 它具有简单的拖放图形设计。
  • Mule ESB 能够进行可视化数据映射和转换。
  • 用户可以获得数百个预构建的经过认证的连接器的便利。
  • 集中式监控和管理。
  • 它提供了强大的企业安全执行功能。
  • 它提供了 API 管理的功能。
  • 有一个安全的数据网关用于云/本地连接。
  • 它提供了服务注册表,其中所有公开到 ESB 的服务都已发布和注册。
  • 用户可以通过基于 Web 的管理控制台进行控制。
  • 可以使用服务流分析器进行快速调试。
广告