1. Java Business Integration(JBI)
JBI定义了集成系统的一种架构,基于面向服务的思想,通过Router在组件之间交换Normalized Message.
Application分成松散耦合的功能单元,这些功能单元被部署至拥有JBI环境的JBI组件中。JBI环境提供了在
JBI组件之间的消息规范化和Mediation. 主要有下面关键部分组成:
2. The Component Framework
The Component Framework是JBI组件插入ESB的基础结构。The Component Framework将JBI组件按照
各自的功能分成两种类型的组件:Service Engine, Binding Component.The Component Framework也定
义了一个打包机制用于部署Functional Unit至JBI组件中。
JBI定义的打包模型中的每种类型那个的Package是一个ZIP归档文件,该文件包含一个JBI描述符位于:
META-INF/jbi.xml.每个Package之间的区分是通过JBI描述符中的Root Element来实现的。JBI提供了四种
类型的的Package用于安装和部署,常见的两种是:
(1) Service Asssembly
Service Unit的集合。JBI描述符的Root Element是service-assembly元素。Package的内容是包含Service
Unit的ZIP格式归档文件的集合。JBI描述符指定每个绑定的Service Unit的目标JBI组件。
(2) Service Unit
包含部署至JBI组件的一个功能包。
Service Unit在没有组织进Service Assembly时是不能被安装的。
当多个Service Unit被配置后,JBI组件将实现Service Unit中描述的功能,此时JBI组件有以下的角色:
3. The normalized message route
The normalized message route是一个Bus,用于在部署至ESB 上的Endpoint之间穿梭Message. JBI组件彼
此之间不发送消息,而是将消息传输给NMR, NMR负责分发消息至正确的Endpoint.
NMR使用基于WSDL的消息模型调停JBI组件之间的消息交互。使用基于WSDL的模型提供了必要的层次抽象
可以确保JBI组件完全松耦合。有四种消息交互的模式:
Normalized messages: 为了完全松耦合消息的交互,JBI使用Normalized messages。一个Normalized
messages用于展示在NMR上传输的所有消息数据,包含:
meta-data, properties
payload
attachments
security Subject
JBI binding components负责规范化所有的消息,然后放至在NMR中;Binding components 规范化来自外
部源的消息然后传递给NMR,同时Binding components也反“规范化”消息为适合的格式被外部源使用。
4. Management Structure
JBI环境通过JMX进行管理,提供了许多Ant Task进行自动化管理常见管理任务。
有四种类型的组件可被安装至JBI环境: