浅析主流商业和开源esb产品

上传人:wt****50 文档编号:50295998 上传时间:2018-08-07 格式:PPT 页数:36 大小:638.49KB
返回 下载 相关 举报
浅析主流商业和开源esb产品_第1页
第1页 / 共36页
浅析主流商业和开源esb产品_第2页
第2页 / 共36页
浅析主流商业和开源esb产品_第3页
第3页 / 共36页
浅析主流商业和开源esb产品_第4页
第4页 / 共36页
浅析主流商业和开源esb产品_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《浅析主流商业和开源esb产品》由会员分享,可在线阅读,更多相关《浅析主流商业和开源esb产品(36页珍藏版)》请在金锄头文库上搜索。

1、浅析主流商业和开源ESB陈 义 概述主要内容:介绍了主流商业和开源ESB的发展趋势、可 借鉴的地方和其缺点。主要介绍:Oracle Service BusWebSphere Message BrokerMuleServiceMix/FUSE ESBSynapse/WSO2 ESB主流商业和开源ESB一览类类型产产品公司商业Oracle Service Bus (OSB) OracleOracle Enterprise Service Bus (ESB)WebSphere Enterprise Service Bus IBMWebSphere Message Broker WebSphere D

2、ataPowerSonic ESBProgressActiveMatrix Service BusTIBCO开源MuleMuleSoftServiceMix/FUSE ESBProgressSynapse/WSO2 ESBWSO2Oracle Service Bus (OSB)的架构图OSB的发展趋势易用性增强开发工具从Web Console迁移到Eclipse,支持图形化拖拽和便于调试性能提升嵌入Oracle Coherence(企业级的内存数据网格)产品,在特定场景 下为服务调用提供缓存,性能提升80%。管控能力增强采用自动化的生命周期服务治理,从服务设计、开发、部署和 运行期的整个服务生

3、命周期内和Enterprise Repository产品进 行自动同步,无需人工干预。OSB可借鉴之处易用性在studio上直接集成测试功能,比如studio能提供直接发送和接收 SOAP,JMS消息的功能,无需借助第三方工具,如SoapUI和编写 JMS客户端代码。性能采用Cache机制,为静态响应信息提升性能。静态响应信息是指在一 段时间内不会发生变化的信息,如天气预报,手机套餐,人民币汇率 等,这些数据变化的周期通常是1天,1月。实现手段:采用比较成熟的开源Memcached或者轻量级的JCACHE。OSB的缺点依赖于Weblogic重量级的统一消息格式:通过反编译OSB的源码,可以看出

4、OSB将各种协议( HTTP,WS,JMS)接入的消息统一转换为SOAP Message,再通过 Xquery Engine对SOAP Message进行XML操作。以下场景其缺点可立即显现:1.HTTP下的大数据包2.JMS Object类型的大数据包(最新版本OSB才支持JMS Object类型 ,之前只支持JMS Text类型依据:对大数据包进行XML操作比较耗CPU将大的Object转换为XML是个繁重的操作WebSphere Message Broker(WMB )的发展趋势简化开发/部署架构去掉configuration manager,开发工具/应用可以直接和broker 交互。

5、易管理为管理员提供专用的管理工具-WebSphere Message Broker Explorer,可以管理本地和远程的broker和queue manager, 同时提供了监控broker性能和消息流的功能。简化开发流程将常用的消息流场景进行了模板化,推出了基于模式的开发方 式,用户只需要配置相关参数即可。提供的模式分为两类:内 置(built-in)和自定义(user-defined)。WMB开发/部署架构的变迁(V6.0)WMB开发/部署架构的变迁(V7.0)WMB开发/部署架构的变迁去掉configuration manager,开发工具/应用可以直 接和broker交互。Broke

6、r的配置信息保存在File中,可以不依赖于DB 。统一安全机制,queue managers and brokers均采 用MQ queue的授权机制。V6中采用的安全机制是 由Configuration Manager提供的Access Control Lists (ACLs)来管理授权的。统一publish/subscribe机制,Message Broker V7 直接采用WebSphere MQ V7的publish/subscribe机 制,因此去掉了以前版本中使用publish/subscribe 时所需的User Name Server。基于模式的开发方式WMB提供的开发模式将常

7、用场景模式化,比如服务穿透,studio自动生成配置文件,自动完成 服务开发和服务组装的所有工作,用户只需填入参数。http:/ htm基于模式开发方式的优势开发方式模式化简化开发方式,减低了使用门槛,减少了使用中出现的概率。开发方式的转变由自底向上转变为自上而下。自底向上根据使用场景,逐个一步一步地开发组件,最后进行组装。自上而下根据使用场景选择特定的模式,用户只需要配置参数(比如队 列名称,WSDL地址等)即可。WMB可借鉴之处基于模式的开发将常用的场景模式化,比如服务穿透场景。现在开发一个服务穿透的场景所需步骤:1.创建并配置业务服务2.创建并配置代理服务3.在代理服务中关联业务服务如果

8、采用模式开发,其步骤:1.创建服务穿透模式并配置业务服务和代理服务也许可以将步骤减少到一步。WMB的缺点重量级的架构传统的EAI架构,必须依赖于WMQ。笨重的ESQLESQL是WMB用于处理消息流的一套特有的扩展SQL的语言,功能很 丰富,语法比较多,但学习门槛较高。相比直接通过java方法操作消息,显得格外笨重。Mule的架构图Mule的发展趋势社区活跃度在开源ESB中,活跃程度最高,用户量大,不断推出新版本。易用性“让一切变得更简单”是Mule的宗旨。2次重构核心架构、推出接入云 应用,消息流,基于模式的配置以及热部署;Mule IDE3.0,将支持 图元拖拽,简化开发。扩展性增加一个新协

9、议非常简单,只需实现5个接口类即可。管理性推出Mule Management Console(收费),管理、部署和监控应用。文档文档非常丰富,降低了使用门槛。Mule可借鉴之处基于模式的配置基于web service proxy模式的web service的穿透场景的配置(配置非常简单,3个属性)Mule可借鉴之处易扩展新增一个协议/transport只需实现5个接口类org.mule.api.transport.Connectororg.mule.api.transport.MessageReceiverorg.mule.api.transport.MessageDispatcherorg.

10、mule.api.transport.MessageDispatcherFactoryorg.mule.api.transport.MuleMessageFactoryMule可借鉴之处异常处理框架异常策略设置级别:model和service异常处理方式:1.将异常路由到指定的目的地2.根据异常类型过滤异常,并路由到指定目的地3.设置重试次数4.当采用了事务时,可以在异常处理策略中设置当发生异常时是继续 提交还是回滚事务。Mule的缺点集群非常弱1.只能配置一个主实例和一个从实例2.不支持flow和基于模式的配置3.某些路由会丢失或者获得重复的消息Mule IDE目前的IDE只提供XML级别的

11、编辑,还不能实现图元的拖拽稳定性开源项目的通病,需要在测试场景下进行验证ServiceMix的架构图ServiceMix的发展趋势JBI2.0规范发展缓慢IT巨头Oracle,IBM投了反对票,目前只有几家小公司投支持票ServiceMix迁移到OSGiJBI2.0中增加了对OSGi的支持;ServiceMix4.x完全基于OSGi,ServiceMix3.x继续前行孵化新项目CamelKarafServiceMix的优势无缝集成CXF,ActiveMQ,Camel和ODE因为ServiceMix,ActiveMQ,CXF,Camel都是FUSE的开源产品JBI的优势组件BC,SE可以在任何J

12、BI容器(比限于ServiceMix)中直接运行, 复用性强基于OSGi具备OSGi的优势:模块化,热部署,易扩展基于Karaf提供了非常丰富的命令,管理、部署和监控ServiceMixServiceMix的缺点JBI规范太复杂已被主流中间件厂商抛弃,没有受到业界的青睐架构复杂由于JBI的复杂性所致,其架构并非轻量级缺少IDE的支持必须手写大量的XML配置文件缺少governor的支持ServiceMix4只是借助Flex的web console管理OSGi的bundle学习门槛高用户文档和相关资料比较少Synapse/WSO2 ESB运行期架构图WSO2 ESB=Synapse+Monito

13、ring+Management+Governance RegistrySynapse/WSO2 ESB的发展趋势Synapse发展缓慢发展缓慢,新版本中没有增加比较有亮点的功能特性WSO2 ESB发展迅速对Synapse增加了企业级特征:1.基于WSO2的Carbon平台(OSGi框架)2.支持集群、负载均衡和failover routing3.支持流量控制和数据缓存还增加了外围产品:1. WSO2 Governance Registry,服务注册产品2. WSO2 ESB management console,ESB管理控制台3. WSO2 Carbon Studio,开发ESB的studi

14、oWSO2 ESB的优势基于Axis借助于Axis的特性,能非常好的支持ws规范,ws-*。因此非常适合 WebService的场景。基于WSO2的Carbon平台Carbon是WSO2的基础平台,它是一个OSGi框架,几乎WSO2的都基 于它。WSO2 ESB的优势支持集群集群中节点间的通信框架基于Apache Tribes(组通信框架)相关信息持久化在内嵌的Derby中支持一个主节点和多个从节点failover routing在集群环境中,所有的请求只能被主节点接收,从节点只能作为备份 节点。WSO2 ESB的优势支持流量控制在单个ESB实例或者集群中,可以在服务级别配置流量控制。 当请求

15、数超过阀值时,ESB将被拒绝访问。实现机制:借助组件Throttling Mediator支持数据缓存集群中的各个ESB实例共享缓存的数据。当一个请求被ESB实例1处理完后返回响应信息,当再次向ESB实例1 或者集群中其他的ESB实例发送该请求时,直接从缓存中取出原来的 响应信息。实现机制:借助组件Caching MediatorWSO2 ESB的优势WSO2 Governance Registry开源中最优秀的服务注册项目WSO2 ESB management console创建和管理各组件(接入层、中介层和接出层);图形化地方式统计系统资源(CPU,内存);图像化统计ESB中各组件(接入层

16、、中介层和接出层)接收发送消息 的大小以及响应时间;记录系统日志、SOAP日志;图形化显示消息的流向WSO2 ESB的优势文档丰富WSO2提供了非常丰富的文档:安装手册开发手册管理员手册部署手册大量的使用实例WSO2 ESB的优势性能测试报告每个新版本的发布都会发布基准性能测试报告WSO2 ESB的缺点架构不够清晰显得有点臃肿、不简洁、不够优雅扩展性差新增一个协议/transport非常困难组件比较凌乱对多种协议(HTTP,WebService,JMS,FTP,EMAIL)的支持,部分依 赖于Axis2,部分依赖于synapseWSO2 ESB可借鉴之处集群、负载均衡和failover routing 流量控制和数据缓

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号