Skip to content

ESB模块

ESB是什么?

ESB(Enterprise Service Bus,中文名称:企业服务总线)是一种集成中间件技术,它提供了在分布式企业环境中连接、管理和协调不同服务的能力。各种不同平台的异构服务接入到ESB,交互消息在ESB中转换成消息流。再通过各种中介处理:路由、转换、增强、分支、聚合等等。最后再将消息转换成适当形式,发送到指定的目的地或返回给调用方。

esbOverview_img_1.png

ESB解决了什么?

  1. 系统间集成复杂性

    ESB作为一个中间件层,简化了不同系统之间的集成过程。它提供了标准化的接口和协议,使得不同技术栈、不同架构的系统能够方便地互联互通。这降低了系统集成的复杂性和成本。

  2. 服务重用与标准化

    通过ESB,企业可以将服务封装成标准化的接口,供不同的业务单元或应用程序重用。这提高了服务的可维护性和可扩展性,同时促进了服务的标准化,使得服务管理更加便捷。

  3. 消息传递与路由

    ESB支持消息传递和路由功能,能够根据业务需求将消息从一个服务路由到另一个服务。这实现了服务之间的松耦合,提高了系统的灵活性和可扩展性。同时,ESB还可以对消息进行必要的处理,如数据转换、格式调整等。

  4. 服务治理与管理

    ESB提供了服务注册、发现、调用和监控等管理功能,使得企业可以方便地管理其服务生态系统。这有助于确保服务的可用性、性能和安全性,同时提高了服务的管理效率和运维水平。

  5. 业务流程自动化

    ESB可以支持业务流程的设计、管理和监控,使得企业能够实现业务流程的自动化和优化。这提高了业务处理的效率和准确性,降低了人为错误的风险。

  6. 跨组织集成

    ESB不仅支持企业内部系统的集成,还可以支持跨组织的集成,如B2B交易、供应链协同等。这使得企业能够与合作伙伴、供应商和客户等外部实体进行无缝连接,实现信息共享和业务协同。

  7. 安全性和可靠性

    ESB提供了丰富的安全特性,如消息加密、签名验证、访问控制等,以确保服务间的通信安全。同时,它还支持事务处理、消息持久化等可靠性机制,以确保消息的可靠传递和系统的稳定运行。

orapis-ESB

⚠️ 注意:orapis-engine端ESB模块功能的使用需要对应项目所打包的orapis-design端有esb相关控件的使用权限

服务与事件

orapis-engine的ESB模块中,事件服务作为集成于ESB中不同信息系统进行通信的桥梁。事件与服务的简要说明如下:

  • 事件

​ 在ESB模块中,事件是一种用于在不同服务或系统之间传递信息的机制。事件可被消费者发布与订阅。发布者触发事件时,ESB会根据订阅者的回调方式分发给所有订阅了该事件的订阅者。

esbOverview_img_3.png
  • 服务

​ ESB服务是指被发布到ESB注册中心,并可供其他服务或系统发现、调用和集成的服务。这些服务通常是由不同业务系统或应用提供的,它们通过ESB进行集成和交互,以实现业务流程的自动化和信息的共享。

esbOverview_img_2.png

ESB安全认证

​ 服务中使用了esb控件的APP即为ESB应用。调用ESB服务或发布订阅事件是以消费者为操作单位的,消费者生效的前提是启用APP安全认证(APP以安全认证方式进行辨别消费者),所以ESB应用必须开启安全认证。

监控信息流动

​ APP启用elastic_logger插件后,通过ESB模块调用已注册服务或事件时,所有调用过程都会被记录,并可在ESB日志页面检索和监控。通过信息流动监控,可以实时追踪和记录数据在系统间的流动情况。在ESB信息流动监控中,提供信息流动的时序图,能够直观地理解信息在系统中的流动路径和方式。