免费智能真题库 > 历年试卷 > 系统架构设计师 > 2023年下半年 系统架构设计师 上午试卷 综合知识
  第56题      
  知识点:   Web服务架构
  章/节:   软件架构基础知识       

 
代码覆盖率是用来衡量(问题 1)对功能代码的测试情况。链接是(问题 2)系统的一个主要特征,它是在页面之间切换和指导用户去一些未知地址页面的主要手段。
 
 
  A.  桌面应用
 
  B.  Web应用
 
  C.  移动应用
 
  D.  嵌入式应用
 
 
 

  相关试题:软件架构基础知识          更多>  
 
  第51题    2011年下半年  
   58%
某企业内部现有的主要业务功能己经封装为Web服务。为了拓展业务范围,需要将现有的业务功能进行多种组合,形成新的业务功能。针对..
  第62题    2009年下半年  
   60%
Architecture Tradeoff Analysis Method (ATAM)是一种软件架构的评估方法,以下关于该方法的叙述中,正确的是(62)。
  第59题    2014年下半年  
   29%
某公司欲开发一个在线交易系统,在架构设计阶段,公司的架构师识别出3个核心质量属性场景。其中“当系统面临断电故障后,需..
   知识点讲解    
   · Web服务架构
 
       Web服务架构
        W3C将服务定义为:“服务提供者完成一组工作,为服务使用者交付所需的最终结果”。Web Service(Web服务)是解决应用程序之间相互通信的一项技术。严格地说,Web服务是描述一系列操作的接口,它使用标准的、规范的XML描述接口。这一描述中包括了与服务进行交互所需要的全部细节,还包括消息格式、传输协议和服务位置。而在对外的接口中隐藏了服务实现的细节,仅提供一系列可执行的操作,这些操作独立于软、硬件平台和编写服务所用的编程语言。Web服务既可单独使用,也可与其他Web服务一起,实现复杂的业务功能。
                      Web服务模型
                      在Web服务模型的解决方案中,一共有3种工作角色,其中服务提供者(服务器)和服务请求者(客户端)是必须的,服务注册中心是一个可选的角色。它们之间的交互和操作构成了Web服务的架构,如下图所示。
                      
                      Web服务模型
                      (1)服务提供者。即Web服务的所有者,该角色负责定义并实现Web服务,使用WSDL(Web Service Description Language,Web服务描述语言)对Web服务进行详细、准确、规范的描述,并将该描述发布到服务注册中心供服务请求者查找并绑定使用。
                      (2)服务请求者。即Web服务的使用者,虽然Web服务面向的是程序,但程序的最终使用者仍然是用户。从体系结构的角度看,服务请求者是查找、绑定并调用服务,或与服务进行交互的应用程序。服务请求者角色可以由浏览器来担当,由人或程序(如另外一个Web服务)来控制。
                      (3)服务注册中心。服务注册中心是连接服务提供者和服务请求者的纽带,服务提供者在此发布他们的服务描述,而服务请求者在服务注册中心查找他们需要的Web服务。不过,在某些情况下,服务注册中心是整个模型中的可选角色,如使用静态绑定的Web服务,服务提供者可以把描述直接发送给服务请求者。
                      在Web服务模型中的操作包含3种:发布服务描述、查找服务描述、根据服务描述绑定或调用服务。这些操作可以单次或反复出现。
                      (1)发布。为了使用户能够访问Web服务,服务提供者需要发布服务描述使得服务请求者可以查找它。
                      (2)查找。在查找操作中,服务请求者直接检索服务描述或在服务注册中心查询所要求的服务类型。对于服务请求者,可能会在生命周期的两个不同阶段中牵涉到查找操作。在设计阶段,为了程序开发而查找服务的接口描述;在运行阶段,为了调用而查找服务的位置描述。
                      (3)绑定。在绑定操作中,服务请求者使用服务描述中的绑定细节来定位、联系并调用服务,从而在运行时与服务进行交互。绑定可以分为动态绑定和静态绑定。在动态绑定中,服务请求者通过服务注册中心查找服务描述,并动态的同Web服务交互;在静态绑定中,服务请求者实际已经同服务提供者达成默契,通过本地文件或其他的方式直接同Web服务进行绑定。
                      Web服务协议堆栈
                      2004年2月11日,W3C提出了最新的Web Service协议栈,其内容如下图所示。
                      
                      Web服务协议栈
                      Web服务协议堆栈的下层为网络通信部分,Web服务继承了Web的访问方式,使用HTTP(S)作为网络传输的基础,除此之外Web服务还采用了其他的传输协议,如SMTP、FTP、JMS、HOP等。在消息处理方面,Web服务使用了SOAP(Simple Object Access Protocol,简单对象访问协议)作为消息的传送标准。在此之上是WSDL,用以描述Web服务的访问方法。位于最顶层的是与Web服务和应用程序以及Web服务之间相互集成相关的协议,其中包含发现、集成等若干方面。除了底层的传输协议外,整个Web服务协议栈是以XML为基础的,XML语义的精确性和灵活性赋予了Web服务强大的功能。除这些基本协议外,还有一些需要讨论的问题,那就是安全和管理,这两大问题不是Web服务可以独立解决的,例如,在安全方面就需要与PKI(Public Key Infrastructure,公共密钥基础设施)、LDAP(Lightweight Directory Access Protocol,轻量目录访问协议)等相结合。
                      (1)SOAP。SOAP是一种基于XML的协议,通过SOAP,应用程序可以在网络中进行数据交换和远程调用。SOAP使用XML进行编码,是一个开放式的协议。SOAP本身并没有定义信息的语义、服务质量、事务处理等问题,它仅仅是一个对象通信协议,与应用平台完全无关。我们可以将SOAP理解为:HTTP+XML+RPC(Remote Procedure Call,远程过程调用)。在这里,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商业注册中心可以为程序或程序员提供Web服务的位置和技术信息。服务提供者可以向专用的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等技术协议,很容易实现系统的部署。
   题号导航      2023年下半年 系统架构设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
 
第56题    在手机中做本题