Enterprise Service Bus 技术交流-ESB.ppt_第1页
Enterprise Service Bus 技术交流-ESB.ppt_第2页
Enterprise Service Bus 技术交流-ESB.ppt_第3页
Enterprise Service Bus 技术交流-ESB.ppt_第4页
Enterprise Service Bus 技术交流-ESB.ppt_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,enterprise service bus 技术交流,目录,soa与esb 什么是soa soa与esb的关系 esb的概念 什么是esb esb功能模型 esb最简功能定义 esb常用技术与规范 esb实现 apache synapse 其它开源esb实现,soa 与 esb,软件开发的演变历程,面向机器语言(monolithic)的开发模式 面向过程(procedure)的开发模式 面向对象(object)的开发模式 面向组件(component)的开发模式 面向服务(soa)的模式,什么是soa,service oriented architecture 一种以服务为基础的架构 服务边界清晰 服务自治,低耦合 服务通过schema和contract发布,而不是class和type,soa将业务应用拆分为动态的和可重用的服务,1、将应用分解为模块和可重用的函数以及服务;,2、组合服务和模块以符合业务需求;,3、重用现有的服务和模块以满足变化的业务需求;,服务之间如何交互?(1),legacy business services,legacy applications and data,new business services,on demand process services,on demand information services,on demand people services,partner (b2b) business services,connectivity medium,control services,component services,服务之间如何交互?(2),legacy business services,legacy applications and data,new business services,on demand process services,on demand information services,on demand people services,partner (b2b) business services,enterprise service bus,control services,component services,什么是 esb?,esb是传统中间件技术与xml、web服务等技术相互结合的产物,用于实现企业应用不同消息和信息的准确、高效和安全传递。,enterprise service bus,esb全称为enterprise service bus,即企业服务总线。,一个esb是一个预先组装的soa实现,它包含了实现soa分层目标所必需的基础功能部件。,esb要解决的问题,整合,esb功能模型,esb功能模型定义,通信,服务交互,集成,服务质量,安全性,服务级别,消息处理,管理及自治,建模,基础架构智能,1、通信,路由 寻址 通信技术、协议和标准(例如 jms、http 和 https) 发布/订阅 响应/请求 fire-and-forget,事件 同步和异步消息传递,2、服务交互,服务接口定义(例如,web 服务描述语言(web services description language,wsdl) 支持替代服务实现 通信和集成所需的服务消息传递模型(例如 soap 或企业应用程序集成 (eai) 中间件模型) 服务目录和发现,3、集成,数据库 服务聚合 遗留系统和应用程序适配器 eai 中间件的连接性 服务映射 协议转换 应用程序服务器环境(如 j2ee 和 .net) 服务调用的语言接口(如 java /c/c+/c#),4、服务质量,事务(原子事务、补偿、web 服务事务(ws-transaction) 各种确定的传递范例(例如 web 服务可靠消息传递(ws-reliablemessaging)或对 eai 中间件的支持),5、安全性,身份验证 授权 不可抵赖性 机密性 安全标准(例如 kerberos 和 web 服务安全性(ws-security),6、服务级别,性能 吞吐量 可用性 其他可以构成契约或协定的持久评估方法,7、消息处理,编码的逻辑 基于内容的逻辑 消息和数据转换 有效性 中介 :提供位置透明性的服务路由和定位服务;多种消息传递形式;支持广泛使用的传输协议。 对象标识映射 数据压缩,8、管理和自治,服务预置和注册 记录、测量和监控 服务发现 系统管理和管理工具的集成 自监控和自管理,9、建模,对象建模 通用业务对象建模 数据格式库 b2b 集成的公共与私有模型 开发和部署工具,10、基础架构智能,业务规则 (eip) 策略驱动的行为,特别是对于服务级别、服务功能的安全和质量(例如 web 服务策略(ws-policy),最简单esb功能构成,支持soa的最低功能的esb,实现原则 esb 是一种逻辑体系结构组件,它提供与 soa 的原则保持一致的集成基础架构。 soa 原则需要使用与实现无关的的接口、强调位置透明性和可互操作性的通信协议、相对粗粒度和封装可重用功能的服务定义。 esb 可以作为分布式的异构基础架构进行实现。 esb 提供了管理服务基础架构的方法和在分布式异构环境中进行操作的功能。,最低的esb功能,通信 提供位置透明性的路由和寻址服务 控制服务寻址和命名的管理功能 至少一种形式的消息传递范型(例如,请求/响应、发布/订阅等等) 支持至少一种可以广泛使用的传输协议 集成 支持服务提供的多种集成方式,比如 java 2 连接器、web 服务、异步通信、适配器等等 服务交互 一个开放且与实现无关的服务消息传递与接口模型,它应该将应用程序代码从路由服务和传输协议中分离出来,并允许替代服务的实现。,esb常用技术与规范,xml/soap web service(技术与相关规范) jms/servlet/ejb jbi /sca jbi sun公司解决soa的方案 sca bea、ibm、oracle等知名中间件厂商联合制定的一套符合soa思想的规范 eip routing rules mediation rules,esb应用,esb在不同领域具有非常广泛的用途 电信领域:电信行业oss的应用整合 电力领域:电力行业ems的数据整合 金融领域:银企间业务处理平台的流程整合 电子政务:支持电子政务应用软件业务基础平台 其它领域,一个轻量级的esb实现 -apache synapse,apache synapse特性,1、基于apache axis2,最新1.2版本 2、支持服务注册以及寻址管理 3、支持ws-addressing/ws-security/ws-rm等规范 4、支持http(s)/jms/pop3/smtp/imap/fix等协议以及转换 5、消息处理:消息接收、转发、中介、路由、错误处理 6、服务质量 7、支持load balance和failover,以及服务缓存 8、支持脚本中介,无需修改应用代码,通过js等脚本来控制消息 9、jmx,支持自治监控,消息仲裁框架,apache synapse 实现了通用的中介框架。可以指定一个对消息进行操作(基于它所到达的端点、或基于某种筛选)的中介序列。synapse 的目标是支持一组有价值的、即时可用的中介。,synapse中介,1、记录日志到 log4j 2、修改 header,包括 ws-addressing header。 实现基于内容的路由功能。 3、运行脚本,包括 javascript、groovy、ruby 和 bean scripting framework (bsf) 所支持的其他脚本。e4x 支持允许 javascript 直接操纵 xml 消息,而不需要使用像 dom 这样的 api。在 ruby 中也存在类似的支持。 4、启用和终止 ws-security 与 ws-reliablemessaging。 可在 soap 版本和 xml/http 之间进行切换。 5、协议转换,jms/http(s) 6、xml 模式验证。 7、发现消息中的错误或者丢弃它们。 8、用户自定义中介,synapse配置架构,synapse代理模型,例一、web service代理示例,场景说明:可以将不同应用上的web service发布到一台synapse主机上,例二、cbr示例,场景说明:基于内容的消息路由。匹配soap消息中的“to”属性值,将符合条件的请求转发到指定的端点处理。,例三、负载均衡, 60 60 60 。 ,场景说明:以round-robin的方式在三个服务端点之间实现负载均衡。,例四、fail over, 60 60 60 。 ,场景说明:在三个服务端点之间实现失效备援 。,例五、jms/http协议转换,场景说明:用jms客户端api跨协议访问远程web service。,例六、可靠消息交互,场景说明:通过ws-rm在synapse与服务提供者之间实现可靠消息交互。,例七、自定义中介,场景说明:通过synapse api自定义中介(实现org.apache.synapse.mediator 接口)来实现对传输消息的访问和控制。,jboss soa platform,servicemix esb,mule esb,fuse esb,wso2 esb,esb 的方案设计原则,1、esb 涉及 it 应用环境分析,定义 esb 与相关应用的接口模式; 2、esb 架构概要设计,并定义架构原则; 3、esb 相关产品选择,包括与外围系统的适配器选择和 esb 产品选择; 4、esb 组件模型设计,分解 esb 的相关模块,满足 soa 的分离关注点等架构原则; 5、esb 运作模型设计,满足平台的非功能性需求; 6、esb 平台的服务流设计,涉及路由、转换和映射等; 7、esb 的同步、异步或者发布/订阅模式设计; 8、esb

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论