面向服务的架构SOA思想课件

上传人:沈*** 文档编号:201076950 上传时间:2023-04-18 格式:PPT 页数:29 大小:514.50KB
返回 下载 相关 举报
面向服务的架构SOA思想课件_第1页
第1页 / 共29页
面向服务的架构SOA思想课件_第2页
第2页 / 共29页
面向服务的架构SOA思想课件_第3页
第3页 / 共29页
点击查看更多>>
资源描述
面向服务的架构(面向服务的架构(面向服务的架构(面向服务的架构(SOASOA)面向服务的架构(SOA)思想什么是什么是SOASOA为什么要使用为什么要使用SOASOASOASOA工作原理工作原理构建构建SOASOASOASOA的应用的应用目录面向服务的架构(SOA)思想什么是SOA面向服务的体系结构(面向服务的体系结构(Service-Oriented ArchitectureService-Oriented Architecture,SOASOA)是一个组件模型。)是一个组件模型。面向服务的架构(SOA)思想组件模型它将应用程序的不同功能单元(称为服务)通过这它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来;些服务之间定义良好的接口和契约联系起来;接口是采用中立的方式进行定义的,它应该独立于接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和实现服务的硬件平台、操作系统和 编程语言;编程语言;构建在各种这样的系统中的服务可以一种统一和通构建在各种这样的系统中的服务可以一种统一和通用的方式进行交互。用的方式进行交互。面向服务的架构(SOA)思想Web serviceWeb service平台是一套标准,它定义了应用程序如何平台是一套标准,它定义了应用程序如何在在WebWeb上实现互操作性。你可以用任何你喜欢的语言,上实现互操作性。你可以用任何你喜欢的语言,在任何你喜欢的平台上写在任何你喜欢的平台上写Web service Web service,只要我们可以通,只要我们可以通过过Web serviceWeb service标准对这些服务进行查询和访问。标准对这些服务进行查询和访问。Web serviceWeb service是技术规范,是技术规范,SOASOA是设计原则。从本质上是设计原则。从本质上讲,讲,SOASOA是一种架构模式,而是一种架构模式,而web serviceweb service是利用一组标准是利用一组标准实现的服务。实现的服务。Web serviceWeb service是实现是实现SOASOA的方式之一。用的方式之一。用web web serviceservice实现实现SOASOA的好处是:可以实现一个中立平台,来获的好处是:可以实现一个中立平台,来获取服务,获取更好的通用性。取服务,获取更好的通用性。Web ServicesWeb Services的目标是即时装配、松散耦合以及自动的目标是即时装配、松散耦合以及自动集成。集成。Web service面向服务的架构(SOA)思想为什么要使用SOA 传统的架构,软件包是被编写为独立的(传统的架构,软件包是被编写为独立的(self-containedself-contained)软件,即在一个完整的软件包中将许多应用程序功能整合在软件,即在一个完整的软件包中将许多应用程序功能整合在一起。实现整合应用程序功能的代码通常与功能本身的代码一起。实现整合应用程序功能的代码通常与功能本身的代码混合在一起。我们将这种方式称作软件设计混合在一起。我们将这种方式称作软件设计“单一应用程序单一应用程序“。与此密切相关的是,更改一部分代码将对使用该代码的代。与此密切相关的是,更改一部分代码将对使用该代码的代码具有重大影响,这会造成系统的复杂性,并增加维护系统码具有重大影响,这会造成系统的复杂性,并增加维护系统的成本。而且还使重新使用应用程序功能变得较困难,因为的成本。而且还使重新使用应用程序功能变得较困难,因为这些功能不是为了重新使用而打的包。这些功能不是为了重新使用而打的包。缺点:代码冗余缺点:代码冗余 不能重用不能重用 紧耦合紧耦合 成本高成本高 面向服务的架构(SOA)思想 SOASOA旨在将单个应用程序功能彼此分开,以便这些旨在将单个应用程序功能彼此分开,以便这些功能可以单独用作单个的应用程序功能或功能可以单独用作单个的应用程序功能或“组件组件”。这。这些组件可以用于在企业内部创建各种其他的应用程序,些组件可以用于在企业内部创建各种其他的应用程序,或者如有需要,对外向合作伙伴公开,以便用于合作伙或者如有需要,对外向合作伙伴公开,以便用于合作伙伴的应用程序。伴的应用程序。SOASOA优点:代码重用优点:代码重用 松耦合松耦合 平台独立平台独立 语言无关语言无关为什么要使用SOA面向服务的架构(SOA)思想商品消费软件服务面向服务的架构(SOA)思想SOA工作流程面向服务的架构(SOA)思想SOASOA架构中有三种角色:架构中有三种角色:服务提供者:发布自己的服务,并且对服务请求进行服务提供者:发布自己的服务,并且对服务请求进行响应。响应。服务注册中心:注册已经发布的服务注册中心:注册已经发布的web serviceweb service,对其进行,对其进行分类,并提供搜索服务。分类,并提供搜索服务。服务请求者:利用服务中心查找所需要的服务,然后服务请求者:利用服务中心查找所需要的服务,然后使用该服务。使用该服务。SOA角色面向服务的架构(SOA)思想SOA操作SOASOA的三种操作:的三种操作:发布操作:为了使服务可访问,需要发布服务描述以使发布操作:为了使服务可访问,需要发布服务描述以使服务使用者可以发现它。服务使用者可以发现它。查找操作:服务请求者定位服务,方法是查询服务注册查找操作:服务请求者定位服务,方法是查询服务注册中心来找到满足其标准的服务。中心来找到满足其标准的服务。绑定操作:在检索到服务描述之后,服务使用者继续根绑定操作:在检索到服务描述之后,服务使用者继续根据服务描述中的信息来调用服务。据服务描述中的信息来调用服务。面向服务的架构(SOA)思想SOAP:SOAP:简单对象访问协议简单对象访问协议 (Simple Object Access Protocol)(Simple Object Access Protocol)WSDL:WebWSDL:Web服务描述语言服务描述语言 WSDL(Web Services Description WSDL(Web Services Description Language)Language)UUDI:UUDI:统一描述、发现和集成统一描述、发现和集成 (Universal Description,(Universal Description,Discovery and Integration)Discovery and Integration)WSDLWSDL用来描述服务;用来描述服务;UDDIUDDI用来注册和查找服务;而用来注册和查找服务;而SOAPSOAP,作为传输层,用来在消费者和服务提供者之间传送,作为传输层,用来在消费者和服务提供者之间传送消息。一个消费者可以在消息。一个消费者可以在UDDIUDDI注册表(注册表(registryregistry)查找服)查找服务,取得服务的务,取得服务的WSDLWSDL描述,然后通过描述,然后通过SOAPSOAP来调用服务。来调用服务。SOA的相关标准WSDL、UUDI、SOAP面向服务的架构(SOA)思想一个一个SOASOA系统要具有以下六大关键要素系统要具有以下六大关键要素基础设基础设施、已有资源、企业服务、流程模型、服务展现和系统施、已有资源、企业服务、流程模型、服务展现和系统工具(包括开发、测试和管理工具等)。因此,在基础工具(包括开发、测试和管理工具等)。因此,在基础设施和已有资源都已具备的基础上,开发和构建一个设施和已有资源都已具备的基础上,开发和构建一个SOASOA系统要包括以下几方面的工作:系统要包括以下几方面的工作:首先需要设计开发出符合标准的服务,这是整个首先需要设计开发出符合标准的服务,这是整个SOASOA系系统最核心的要素。统最核心的要素。基于标准服务,借助流程编排工具和建模工具,组织构基于标准服务,借助流程编排工具和建模工具,组织构造流程,生成流程模型,更好地满足业务需求。造流程,生成流程模型,更好地满足业务需求。实际构建和开发实际构建和开发SOASOA系统,具体包括服务和应用程序的系统,具体包括服务和应用程序的开发,数据的访问、处理和管理,及对服务各种形式的开发,数据的访问、处理和管理,及对服务各种形式的展现等。展现等。如何构建SOA面向服务的架构(SOA)思想假设股票行业存在以下假设股票行业存在以下6个服务:个服务:Country()()输入参数:国家编码。输出项:国家名称和其他信息。输入参数:国家编码。输出项:国家名称和其他信息。YellowPages()()输入参数:公司名称;输出项:企业代码,所在国家等其他信息。输入参数:公司名称;输出项:企业代码,所在国家等其他信息。NewYorkStock()()输入参数:公司代码,时间;输出项:该公司在纽约的股票价格输入参数:公司代码,时间;输出项:该公司在纽约的股票价格(美元)。(美元)。LondonStock()()输入参数:公司代码,时间;输出项:该公司在伦敦的股票价格。输入参数:公司代码,时间;输出项:该公司在伦敦的股票价格。USToRMB()()输入参数:美元价格,时间;输出项:对应的人民币价格。输入参数:美元价格,时间;输出项:对应的人民币价格。UKToRMB()()输入参数:英镑价格,时间;输出项:对应的人民币价格。输入参数:英镑价格,时间;输出项:对应的人民币价格。使用SOA进行服务组合实例面向服务的架构(SOA)思想用户想通过“跨国公司名称”和“时间”找出该跨国公司在纽约的股票折合成人民币的价格以及该公司所在国家的信息。分析:输入参数:跨国公司的名称、时间如何实现对给定服务的组合,找出满足用户的信息?使用SOA进行服务组合实例面向服务的架构(SOA)思想使用SOA进行服务组合实例查询过程流程图面向服务的架构(SOA)思想在石油企业内部,有许多不同的网站,进入每个网在石油企业内部,有许多不同的网站,进入每个网站,都需要身份验证,不仅浪费时间而且容易遗忘代站,都需要身份验证,不仅浪费时间而且容易遗忘代码码 ,另外,网站维护人员对各种服务需要建立相应的用,另外,网站维护人员对各种服务需要建立相应的用户认证与信息管理系统,分布于个服务器中的用户数据户认证与信息管理系统,分布于个服务器中的用户数据不仅浪费维护人员的时间,而且过于分散的用户数据不不仅浪费维护人员的时间,而且过于分散的用户数据不利于统计和管理。用户的需求和管理要求促使用户趋于利于统计和管理。用户的需求和管理要求促使用户趋于统一,产生了统一者认证。统一,产生了统一者认证。统一认证的实现是基于统一认证的实现是基于SOASOA的架构。的架构。SOA应用统一认证面向服务的架构(SOA)思想从中可以看出使用从中可以看出使用SOASOA的优点:将身份验证这一功能模的优点:将身份验证这一功能模块发布成一种服务,其他的软件可以通过块发布成一种服务,其他的软件可以通过UUDIUUDI查找该服查找该服务,然后将该服务与服务的实现进行绑定。务,然后将该服务与服务的实现进行绑定。SOA应用统一认证面向服务的架构(SOA)思想SOA应用HOTI架构图面向服务的架构(SOA)思想HOTI 应用架构流向图面向服务的架构(SOA)思想登录服务的实现登录服务的实现ServiceService端(服务提供者):编写服务的实端(服务提供者):编写服务的实AuthorityBLHAuthorityBLH ,它实现了,它实现了BaseBLHBaseBLH,该服务的每一种,该服务的每一种操作在该类中都有一个对应的方法,针对不同的操作操作在该类中都有一个对应的方法,针对不同的操作名称,调用相应的方法。它是一个业务逻辑处理,与名称,调用相应的方法。它是一个业务逻辑处理,与数据层通信,完成相应的数据操作。数据层通信,完成相应的数据操作。ServicemanagerServicemanager服务的注册与管理。服务的实现完成以服务的注册与管理。服务的实现完成以后,要为服务定义服务名和操作名。例如登录组件的后,要为服务定义服务名和操作名。例如登录组件的serviceName=serviceName=Auhtority_MgrAuhtority_Mgr operationName=operationName=“query_AuthoritysWithUserID”“query_AuthoritysWithUserID”。然。然后向后向ServiceManagerServiceManager进行注册。每一种服务都对应一进行注册。每一种服务都对应一个业务逻辑处理个业务逻辑处理XXXBLHXXXBLH。HOTI的服务调用面向服务的架构(SOA)思想客户端(服务请求者):当用户点击登录时,想要调客户端(服务请求者):当用户点击登录时,想要调用用sevicesevice端的服务。必须在配置文件中给出服务的名称端的服务。必须在配置文件中给出服务的名称和操作名称。和操作名称。serviceCall serviceName=/。SoapSoap代理根据用户的请求,将请求的消息转换成代理根据用户的请求,将请求的消息转换成soapsoap消息格式,创建连接,与服务端进行通信。消息格式,创建连接,与服务端进行通信。ServiceService端的端的soapsoap引擎监听到请求,从引擎监听到请求,从soapsoap消息中取出服消息中取出服务名和操作名。通过务名和操作名。通过servicemanagerservicemanager找到该服务对应的找到该服务对应的业务逻辑处理业务逻辑处理XXXBLHXXXBLH,然后执行该业务逻辑,将返,然后执行该业务逻辑,将返回的结果封装成回的结果封装成soapsoap消息,返回客户端。消息,返回客户端。HOTI的服务调用面向服务的架构(SOA)思想HOTI的服务调用流程面向服务的架构(SOA)思想HOTI的服务调用服务调用配置面向服务的架构(SOA)思想HOTI的服务调用控制转发面向服务的架构(SOA)思想服务端根据发布服务的操作类型来执行相应的业务操作。服务端根据发布服务的操作类型来执行相应的业务操作。HOTI的服务调用面向服务的架构(SOA)思想HOTI的服务调用身份验证的业务逻辑面向服务的架构(SOA)思想具体业务操作的实现代码HOTI的服务调用面向服务的架构(SOA)思想HOTI的服务调用数据访问接口面向服务的架构(SOA)思想
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!