您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > webService开发例子07.SOA面向服务架构2
北风网项目培训基于SOA思想下的WebService实战讲师:Sean第07讲SOA面向服务架构什么是SOA什么是服务SOA架构SOA设计模式CXF实现SOA设计模式•SOA(ServiceOrientedArchitecture)◦中文翻译“面向服务的体系架构”,其中Service◦(服务)是最核心的抽象手段。基于组件架构模式将应用程序的不同功能单元(称为服务)服务之间定义良好的接口和契约联系起来接口是采用中立的方式定义,独立于实现服务的硬件平台、操作系统和编程语言。能通过URL识别的软件程序,通过互联网协议用以支持网络间不同机器的互动操作(W3C)。服务独立于其运行的硬件平台、编程语言和操作系统,由一系列自包含、可复用的软件模块组成。一个服务定义了一个与业务功能或业务数据相关的接口,在不同的系统中服务可以以一种统一的方式进行交互、相互理解(IBM)。想听音乐时,把中意的CD放入CD播放器中播放。CD播放器提供了CD播放的服务如果我们希望能够享受更好的音质,可以更换为HI-FI两种都能提供CD播放服务的功能,但是服务的质量却有所不同服务是一个过程,在这个过程中服务的供应者,通过提供任何必要的手段和方法,满足接受服务之对象的需求。Webservice!=SOA,但Webservice是目前实现SOA的最好方式服务注册中心服务请求者服务提供者ClientServerSOAP3绑定WSDL,UDDI2发现WSDL,UDDI1发布重文档、重过程轻量级、人性化瀑布模型原型方法迭代方法敏捷方法软件危机敏捷性:◦服务的独立性,使得每个服务可以被单独地开发、测试和集成重用性:◦不同模块和系统中的重复部分,可独立出一个个服务低耦合性:◦技术和位置的透明性,使得服务的请求者和提供者之间高度解耦无状态◦以避免服务请求者依赖于服务提供者的状态单一实例◦避免功能冗余明确定义的接口◦接口稳定,明确;数据隐藏自包含和模块化◦业务稳定、重复出现的活动和组件,独立进行部署、版本控制、自我管理和恢复粗粒度◦服务数量不应该太大,依靠消息交互而不是远程过程调用(RPC),通常消息量比较大,但是服务之间的交互频度较低。服务之间的松耦合性◦服务使用者看到的是服务的接口,其位置、实现技术、当前状态等对使用者是不可见的,服务私有数据对服务使用者是不可见的。重用能力◦服务应该是可以重用的互操作性、兼容和策略声明当企业系统越来越多◦缺少业务流程标准◦架构策略限制◦独立的程序业务需要◦基础设施构建杂乱SOA!!??WebService!!??Web服务减少了应用间的接口但是分别独立的连接还是会导致接口之间的限制星型集成:SOA设计模式SOA设计模式星型集成:形状=协议颜色=数据类型ESB在请求者和服务之间实现了:•转化请求者和服务之间的传输协议•处理分离资源间的业务事件•转换请求者和服务之间的消息格式•路由服务间的消息SOA设计模式•企业服务总线更好地减少了接口•更加快速的响应业务需求SOA设计模式旅行预定过程有效班机服务企业服务总线新检查旅行服务定酒店服务有效酒店服务定车服务有效班机服务1有效班机服务2定机票服务检查信用服务改变服务并且对已经存在的服务造成最小的影响快速添加新的服务SOA设计模式通过服务选择决定服务质量SOA设计模式CXF是指Celtix+XFire.合并之后的项目◦XFire提供了非常优秀而又简便的WebService解决方案。◦Celtix是开源组织ObjectWeb的一个ESB解决方案的开源项目Celtix提供了一个Run-time的Javaenterpriseservicebus(ESB)(Java企业服务总线)以及一组可扩展的API,通过使用一个基于标准的,面向服务的体系来简化商业与技术组件的构建,集成和灵活重复使用。项目在2006年1月就停止了CXF的初步想法就是这个项目是ESB+Webservice的解决方案什么是SOA什么是服务SOA架构SOA设计模式CXF实现SOA设计模式欢迎访问我们的官方网站
本文标题:webService开发例子07.SOA面向服务架构2
链接地址:https://www.777doc.com/doc-7616098 .html