ESB是企业服务总线,故名思议,ESB是一个面向Service的超级Adapter。
其中,开源的ESB软件,比较出名的为Mule ESB和JBoss ESB。
Mule ESB 是开源ESB软件,分企业版(提供试用,价格不菲)和社区版(免费,开源CPAL协议)。
1、基础概念
1.1 Global Elements
Connectors:连接器,在远端服务和Endpoints之间保持联系。
Endpoints:输入或输出端,如HTTP,TCP,UDP,文件,数据等
Transformers:转换器,改变当前消息
Expressions:表达式,可以自定义。
Names and References:名字和参考,名字用于表示一个对象,参考用于在一个对象中引用其他对象
1.2Flows:流,控制信息流向
Endpoints:输入或输出端,如HTTP,TCP,UDP,文件,数据等
Transformers:转换器,改变当前消息
Message Enrichment:消息扩展
Logger:记录日志
Filters:过滤器,判断是否处理请求。
Routers:消息路由,用于拆分和拼装消息。
Components:控件,用Java或groovy等写的插件
Cloud Connectors:连接云服务
Processor Chain:消息处理链
Sub-flow:子消息流过程,类似于消息流的函数
Exception Strategies:异常处理策略
1.3 Configuration Patterns,分为四类
pattern:bridge 在输入及输出之间进行桥接,
pattern:simple-service 简单服务
pattern:validator 校验
pattern:web-service-proxy is a proxy for a web service.
1.4Service:旧特性,灵活性不是很好
1.5Custom Elements:自定义组件
1.6System-level Configuration:系统配置
Threading Profiles
Timeouts
1.7Managers有三类管理
Transaction manager
Security Manager
Notifications Manager
1.8Agents:有两类代理
Custom Agents
Management Agents