|
知识路径: > 软件架构基础知识 > Web服务架构 >
|
相关知识点:2个
|
|
|
|
在Web服务模型的解决方案中,一共有3种工作角色,其中服务提供者(服务器)和服务请求者(客户端)是必须的,服务注册中心是一个可选的角色。它们之间的交互和操作构成了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服务进行绑定。
|
|
|