首页 > 其他分享 >Web服务架构

Web服务架构

时间:2023-09-29 18:00:53浏览次数:36  
标签:Web 服务 请求者 服务提供者 架构 SOAP 描述

W3C将服务定义为:“服务提供者完成一组工作,为服务使用者交付所需的最终结果”。Web Service(Web 服务)是解决应用程序之间相互通信的一项技术。严格地说Web 服务是描述一系列操作的接口,它使用标准的、规范的 XML 描述接口。这一描述中包括了与服务进行交互所需要的全部细节,包括消息格式、传输协议和服务位置。而在对外的接口中隐藏了服务实现的细节,仅提供一系列可执行的操作,这些操作独立干软、硬件平台和编写服务所用的编程语言。Web 服务既可单独使用,也可与其他 Web服务一起,实现复杂的业务功能。

Web服务模型

在 Web 服务模型的解决方案中,一共有三种工作角色,其中服务提供者(服务器)和服务请求者(客户端) 是必须的,服务注册中心是一个可选的角色。它们之间的交互和操作构成了Web 服务的架构,如图所示。

Web服务架构_Web

Web服务模型

(1)服务提供者。即 Web 服务的所有者,该角色负责定义并实现 Web 服务,使用WSDL(Web Service Description Language,Web 服务描述语言)对 We 服务进行详细准确、规范的描述,并将该描述发布到服务注册中心供服务请求者查找并绑定使用。

(2)服务请求者。即 Web 服务的使用者,虽然 Web 服务面向的是程序,但程序的最终使用者仍然是用户。从架构的角度看,服务请求者是查找、绑定并调用服务,或与服务进行交互的应用程序。服务请求者角色可以由浏览器来担当,由人或程序(如另外一个Web 服务)来控制。

(3)服务注册中心。服务注册中心是连接服务提供者和服务请求者的纽带,服务提供者在此发布他们的服务描述,而服务请求者在服务注册中心查找他们需要的Web 服务不过,在某些情况下,服务注册中心是整个模型中的可选角色,如使用静态绑定的 Web服务,服务提供者可以把描述直接发送给服务请求者。

对于 Web 服务模型中的操作,包含以下三种,发布服务描述、查找服务描述、根据服务描述绑定或调用服务。这些操作可以单次或反复出现。

(1)发布。为了使用户能够访问 web 服务,服务提供者需要发布服务描述使得服务请求者可以查找它。

(2)查找。在查找操作中,服务请求者直接检索服务描述或在服务注册中心查询所要求的服务类型。对于服务请求者,可能会在生命周期的两个不同阶段中牵涉到查找操作,它们分别是:在设计阶段,为了程序开发而查找服务的接口描述;在运行阶段,为了调用而查找服务的位置描述

(3)绑定。在绑定操作中,服务请求者使用服务描述中的绑定细节来定位、联系并调用服务,从而在运行时与服务进行交互。绑定可以分为动态绑定和静态绑定。在动态绑定中,服务请求者通过服务注册中心查找服务描述,并动态地同 Web 服务交互;在静态绑定中,服务请求者实际已经同服务提供者达成默契,通过本地文件或其他的方式直接同Web服务进行绑定

Web服务协议堆栈

2004年2月11日,W3C提出了最新的Web Service 协议栈,其内容如图所示在Web 服务协议堆栈的下层为网络通信部分,Web 服务继承了 Web 的访问方式使用HTTP(S)作为网络传输的基础。除此之外,Web 服务还采用了其他的传输协议,如SMTP、FTP、JMS和IIOP等。在消息处理方面,Web 服务使用了SOAP(Simple Obiect Access Protocol,简单对象访问协议)作为消息的传送标准。在此之上是 WSDL,用以描述 Web 服务的访问方法。位于最顶层的是与 Web 服务和应用程序以及 Web 服务之间相互集成相关的协议,其中包含发现、集成等若干方面。除了底层的传输协议外,整个Web 服务协议栈是以XML 为基础的,XML 语的精确性和灵活性赋予了 Web 服务强大的功能。除这些基本协议外,还有一些需要讨论的问题,那就是安全和管理,这两大问题不是 Web 服务可以独立解决的,例如,在安全方面就需要与 PKI(Public KeyInfrastructure,公共密钥基础设施)、LDAP (Lightweight Directory Access Protocol,轻量目录访问协议)等相结合

Web服务架构_XML_02

Web服务协议栈

(1)SOAP。SOAP 是一种基于XML 的协议,通过SOAP,应用程序可以在网络中进行数据交换和远程调用。SOAP 使用XML进行编码,是一个开放式的协议。SOAP本身并没有定义信息的语义、服务质量和事务处理等问题。SOAP 仅仅是一个对象通信协议,与应用平台完全无关。可以将 SOAP 理解为HTTP+XML+RPC(Remote ProcedureCall远程过程调用)。在这里面,HTTP 是网络中的通信协议:XML 是数据格式的协议显然将SOAP理解为RPC的一种并不准确因为SOAP并非单纯的远程进程调用SOAP要强大得多。但以 RPC 的观点看待 SOAP,有助于我们理解 SOAP。由于 SOAP 采用XML和HTTP封装通信消息所以SOAP需要增加XML解析和HTTP传输的额外开销

(2)WSDL。WSDL包含了一套基于 XML的语法,将 Web 服务描述为能够进行消息交换的服务访问点的集合,从而满足了这种需求。WSDL 定义了可被机器识别的SDK(Software Development Kit,软件开发工具包)文档,同时,WSDL也可用于描述自动执行应用程序在通信中所涉及的细节问题。WSDL的目标是描述如何使用程序来调用Web服务,所以可以把 WSDL理解为 Web 服务的SDK 标准,或者是Web 服务的接口定义。对于服务提供者来说,他们既需要描述提供的 Web 服务是做什么的,还要描述如何使用他们提供的Web 服务。

(3)UDDI(Universal Description Discovery and Integration,统一描述发现和集成)UDDI提供了一种 Web 服务的发布、查找和定位方法。可以将UDDI理解为一种目录服务,Web 服务提供者使用UDDI将服务发布到服务注册中心,而 Web 服务使用者通过UDDI查找并定位服务。UDDI除了目录服务之外,还定义了一个用 XML表示的服务描述标准。UDDI定义了一种 Web 服务的发布方式。首先,UDDI商业注册中心可以为程序或程序员提供 We 服务的位置和技术信息。服务提供者可以向专用的UDDI节点发布服务的描述信息,而服务的使用者可以动态地查询并连接到特定的 Web 服务。

Web服务架构的优势

Web 服务是近年来提出的一种新的面向服务的架构,同传统分布式架构相比,Web服务架构的主要优势体现在以下4个方面。

(1)高度的通用性和易用性。Web 服务利用标准的Internet协议(如HTTP、SMTP等),解决了面向 Web 的分布式计算模型,提高了系统的开放性、通用性和可扩展性;而CORBA、DCOM和EJB 等使用私有协议,只能解决企业内部对等实体间的分布式计算。此外,HTTP 能够很容易地跨越系统的防火墙,具有高度的易用性。

(2)完全的平台、语言独立性。Web 服务进行了更高程度的抽象,只要遵循 Web服务的接口即可进行服务的请求和调用。Web 服务将 XML 作为信息交换格式,使信息的处理更加简单,厂商之间的信息很容易实现沟通,这种信息格式最适合跨平台应用。此外,Web 服务基于 SOAP 协议进行远程对象访问可以通过各种开发工具来具体实现而不需要绑定到特定的工具上,这很容易适应不同客户、不同系统平台以及不同的开发平台。而CORBA、DCOM和EJB 等模型要求在对等架构间才能进行通信。

(3)高度的集成性。Web 服务实质上就是通过服务的组合来完成业务逻辑的,因此表现出高度的组装性和集成性。可以说,集成性是 Web 服务的一个重要特征。Web 服务架构是建立在服务提供者和使用者之间的松耦合之上的,这样使得企业应用易于更改。相对于传统的集成方式,Web 服务集成体现了高度的灵活性。Web 服务还可以提供动态的服务接口来实现动态的集成,这也是传统的 EAI解决方案所不能提供的。

(4)容易部署和发布。web 服务架构方案通过UDDI、WSDL和SOAP 等技术协议很容易实现系统的部署。


标签:Web,服务,请求者,服务提供者,架构,SOAP,描述
From: https://blog.51cto.com/u_15590807/7651295

相关文章

  • FTP服务
    FTP服务一:FTP的工作原理1:FTP的概念 2:FTP工作的2种模式a:主动模式2台虚拟机,一台作为客户机,另外一台作为服务器,客户机上面的n号端口去访问服务上面的21号端口,建立连接,并告诉20号端口要去连接客户机的n+1号端口,主动去连接了n+1号端口,建立了数据连接b:被动模式客户机n号端口......
  • 第十一节 移动web
    移动Web第一天目标:使用位移、缩放、旋转、渐变效果丰富网页元素的呈现方式。01-平面转换简介作用:为元素添加动态效果,一般与过渡配合使用概念:改变盒子在平面内的形态(位移、旋转、缩放、倾斜)平面转换也叫2D转换,属性是transform平移transform:translate(X轴移动距离......
  • 三f云免费云服务器的使用体验
    在网上看到了三f云主机的介绍,想着试试看就注册了账号搞了一个免费云服务器试试,怎么说呢,作为一个新手,之前完全没有接触过云服务器,使用了三f云的免费云服务器,整个过程非常简单,很快就可以完成服务器的设置和部署。官方也提供了带面板的和纯净的centos,对于我来说还是挺方便的,而且我是......
  • 企业架构及流程管理咨询必备:ARIS企业流程建模工具
    在企业架构建设过程中,业务架构通常以流程梳理为重点,实现企业端到端流程贯通,并以此为基础整合管理体系,建立流程管理机制,形成一流的流程管理体系和标准文件体系,解决体系要求和业务操作两张皮的现象。随着企业的不断发展,业务流程管理如今已经在越来越多的企业中体现出管理价值。然而,众......
  • SOC芯片架构技术分析(二)
    SOC芯片架构技术分析(二)2.1SoC产业链概况2.2产业链上游概况:设计工具寡头竞争2.2产业链上游概况:IP核行业行业集中度高1)行业集中度高,国内厂商市占率较低。2)全球IP核供应商以国外厂商为主,行业集中度相对较高:国内集成电路设计企业所需的IP核大多来自境外供应商,每年进口金......
  • 外卖配送系统开发指南:打造高效、智能的外卖服务
    随着外卖市场的蓬勃发展,餐厅和外卖平台需要不断提高外卖服务的效率和智能性,以满足不断增长的需求。在本文中,我们将探讨如何开发一个高效、智能的外卖配送系统,同时提供一些关键代码示例来帮助您入门。环境准备在开始外卖配送系统的开发之前,您需要确保具备以下基本环境和工具:编程语言......
  • 短视频商城系统的技术架构与最佳实践
    短视频商城系统的概念正在迅速崭露头角,它不仅融合了视频内容和电子商务,还需要一个坚固的技术架构来支持其功能。在本文中,我们将探讨构建短视频商城系统的关键技术组件以及最佳实践,并提供一些示例代码来说明这些概念。技术架构概览短视频商城系统的技术架构包括以下关键组件:前端应用......
  • 武汉星起航电子商务有限公司:连接全球的亚马逊跨境电商孵化服务商
    在全球数字化浪潮的推动下,亚马逊跨境电商行业蓬勃发展,武汉星起航电子商务有限公司(以下简称“星起航”)以其实力雄厚的背景,成为业内备受瞩目的跨境电商孵化服务商。同时,跨境电商的兴起催生了物流、电商平台等相关行业的蓬勃发展,为经济增长提供了新的动力,并创造了更多就业机会。跨境电......
  • 赋能工业数字化转型|辽宁七彩赛通受邀出席辽宁省工业互联网+安全可控先进制造业数字服
    2023年9月25日下午,由软通动力信息技术(集团)股份有限公司主办的“工业互联网+安全可控先进制造业数字服务产业峰会”在辽宁沈阳顺利举办。省市区各级政府、科研院所领导、技术专家、企业高管以及生态合作伙伴代表等齐聚一堂,共同探索数字时代辽宁省制造业数字化转型道路。棱镜七彩全......
  • 赋能工业数字化转型|辽宁七彩赛通受邀出席辽宁省工业互联网+安全可控先进制造业数字服
    2023年9月25日下午,由软通动力信息技术(集团)股份有限公司主办的“工业互联网+安全可控先进制造业数字服务产业峰会”在辽宁沈阳顺利举办。省市区各级政府、科研院所领导、技术专家、企业高管以及生态合作伙伴代表等齐聚一堂,共同探索数字时代辽宁省制造业数字化转型道路。棱镜七彩全资......