SOA面向服务架构经典_第1页
SOA面向服务架构经典_第2页
SOA面向服务架构经典_第3页
SOA面向服务架构经典_第4页
SOA面向服务架构经典_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

面向服务的架构(SOA)

什么是SOA为什么要使用SOASOA工作原理构建SOASOA的应用目录什么是SOA

面向服务的体系结构(Service-OrientedArchitecture,SOA)是一个组件模型。组件模型它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来;接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言;构建在各种这样的系统中的服务可以一种统一和通用的方式进行交互。 Webservice平台是一套标准,它定义了应用程序如何在Web上实现互操作性。你可以用任何你喜欢的语言,在任何你喜欢的平台上写Webservice,只要我们可以通过Webservice标准对这些服务进行查询和访问。

Webservice是技术规范,SOA是设计原则。从本质上讲,SOA是一种架构模式,而webservice是利用一组标准实现的服务。Webservice是实现SOA的方式之一。用webservice实现SOA的好处是:可以实现一个中立平台,来获取服务,获取更好的通用性。WebServices的目标是即时装配、松散耦合以及自动集成。Webservice为什么要使用SOA

传统的架构,软件包是被编写为独立的(self-contained)软件,即在一个完整的软件包中将许多应用程序功能整合在一起。实现整合应用程序功能的代码通常与功能本身的代码混合在一起。我们将这种方式称作软件设计“单一应用程序“。与此密切相关的是,更改一部分代码将对使用该代码的代码具有重大影响,这会造成系统的复杂性,并增加维护系统的成本。而且还使重新使用应用程序功能变得较困难,因为这些功能不是为了重新使用而打的包。 缺点:代码冗余不能重用紧耦合成本高

SOA旨在将单个应用程序功能彼此分开,以便这些功能可以单独用作单个的应用程序功能或“组件”。这些组件可以用于在企业内部创建各种其他的应用程序,或者如有需要,对外向合作伙伴公开,以便用于合作伙伴的应用程序。SOA优点:代码重用松耦合平台独立语言无关为什么要使用SOA商品消费——软件服务SOA工作流程 SOA架构中有三种角色:服务提供者:发布自己的服务,并且对服务请求进行响应。服务注册中心:注册已经发布的webservice,对其进行分类,并提供搜索服务。服务请求者:利用服务中心查找所需要的服务,然后使用该服务。

SOA角色SOA操作作SOA的三三种操操作::发布操操作::为了了使服服务可可访问问,需需要发发布服服务描描述以以使服服务使使用者者可以以发现现它。。查找操操作::服务务请求求者定定位服服务,,方法法是查查询服服务注注册中中心来来找到到满足足其标标准的的服务务。绑定操操作::在检检索到到服务务描述述之后后,服服务使使用者者继续续根据据服务务描述述中的的信息息来调调用服服务。。SOAP:简简单对对象访访问协协议(SimpleObjectAccessProtocol)WSDL:Web服务务描述述语言言WSDL(WebServicesDescriptionLanguage)UUDI:统统一一描述述、发发现和和集成成(UniversalDescription,DiscoveryandIntegration)WSDL用用来描描述服服务;;UDDI用来来注册册和查查找服服务;;而SOAP,,作为为传输输层,,用来来在消消费者者和服服务提提供者者之间间传送送消息。。一个个消费费者可可以在在UDDI注册册表((registry)查查找服服务,取得服务务的WSDL描述,然后后通过SOAP来调用服服务。SOA的相关关标准——WSDL、UUDI、SOAP一个SOA系系统要具有以以下六大关键键要素——基基础设施、已有资源源、企业服务务、流程模型型、服务展现现和系统工具(包括开开发、测试和和管理工具等等)。因此,,在基础设施和已有资资源都已具备备的基础上,,开发和构建建一个SOA系统要要包括以下几几方面的工作作:首先需要设计计开发出符合合标准的服务务,这是整个个SOA系统统最核心的要要素。基于标准服务务,借助流程程编排工具和和建模工具,,组织构造流流程,生成流流程模型,更更好地满足业业务需求。实际构建和开开发SOA系系统,具体包包括服务和应应用程序的开开发,数据的的访问、处理理和管理,及及对服务各种种形式的展现现等。如何构建SOA假设股票行业业存在以下6个服务:Country()输入参数:国国家编码。输输出项:国家家名称和其他他信息。YellowPages()输入参数:公公司名称;输输出项:企业业代码,所在在国家等其他他信息。NewYorkStock()输入参数:公公司代码,时时间;输出项项:该公司在在纽约的股票票价格(美元)。LondonStock()输入参数:公公司代码,时时间;输出项项:该公司在在伦敦的股票票价格。USToRMB()输入参数:美美元价格,时时间;输出项项:对应的人人民币价格。。UKToRMB())输入参数::英镑价格格,时间;;输出项::对应的人人民币价格格。使用SOA进行服务务组合实例例用户想通过过“跨国公公司名称””和“时间间”找出该该跨国公司在在纽约的股股票折合成成人民币的的价格以及该公司所所在国家的的信息。分析:输入参数::跨国公司司的名称、、时间如何实现对对给定服务务的组合,,找出满足足用户的信信息??使用用SOA进进行行服服务务组组合合实实例例使用用SOA进进行行服服务务组组合合实实例例查询询过过程程流流程程图图在石石油油企企业业内内部部,,有有许许多多不不同同的的网网站站,,进进入入每每个个网网站,,都都需需要要身身份份验验证证,,不不仅仅浪浪费费时时间间而而且且容容易易遗遗忘忘代代码,,另另外外,,网网站站维维护护人人员员对对各各种种服服务务需需要要建建立立相相应应的的用用户认认证证与与信信息息管管理理系系统统,,分分布布于于个个服服务务器器中中的的用用户户数数据据不仅仅浪浪费费维维护护人人员员的的时时间间,,而而且且过过于于分分散散的的用用户户数数据据不不利于于统统计计和和管管理理。。用用户户的的需需求求和和管管理理要要求求促促使使用用户户趋趋于于统一一,,产产生生了了统统一一者者认认证证。。统一一认认证证的的实实现现是是基基于于SOA的的架架构构。。SOA应应用用————统统一一认认证证从中可可以看看出使使用SOA的优优点::将身身份验验证这这一功功能模模块发发布成成一种种服务务,其其他的的软件件可以以通过过UUDI查找找该服服务,,然后后将该该服务务与服服务的的实现现进行行绑定定。SOA应用用———统一一认证证SOA应用用———HOTI架构构图HOTI————应用用架构构流向向图——登录服服务的的实现现Service端((服务务提供供者)):编编写服服务的的实AuthorityBLH,,它它实现现了BaseBLH,该该服务务的每每一种种操作作在该该类中中都有有一个个对应应的方方法,,针对对不同同的操操作名名称,,调用用相应应的方方法。。它是是一个个业务务逻辑辑处理理,与与数据据层通通信,,完成成相应应的数数据操操作。。Servicemanager服服务的的注册册与管管理。。服务务的实实现完完成以以后,,要为为服务务定义义服务务名和和操作作名。。例如如登录录组件件的serviceName="Auhtority_Mgr"operationName=“query_AuthoritysWithUserID”。然后后向ServiceManager进进行注注册。。每一一种服服务都都对应应一个个业务务逻辑辑处理理XXXBLH。HOTI的的服务务调用用客户端((服务请请求者)):当用用户点击击登录时时,想要要调用sevice端端的服务务。必须须在配置置文件中中给出服服务的名名称和操操作名称称。<serviceCallserviceName="Auhtority_Mgr"operationName=“query_AuthoritysWithUserID””/>。Soap代理根根据用户户的请求求,将请请求的消消息转换换成soap消消息格式式,创建建连接,,与服务务端进行行通信。。Service端的soap引擎监监听到请请求,从从soap消息息中取出出服务名名和操作作名。通通过servicemanager找到该该服务对对应的业业务逻辑辑处理XXXBLH,,然后执执行该业业务逻辑辑,将返返回的结结果封装装成soap消消息,返返回客户户端。

温馨提示

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

评论

0/150

提交评论