服务描述模型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
来源于书面向服务的计算―原理及应用
我们在第1章介绍软件编程范型的发展时就提到:服务事实上是一种网络环境下具有自治、自描述等特征的特殊构件,因此合理的构件描述模型同样也适用于服务。
此处我们要介绍的是Will Tracz提出的3C模型(Will 1990)。该模型从构件的概念(Concept)、内容(Content)和上下文(Context)三个方面来刻画构件。其中:
●概念是对构件做什么的抽象描述,可以通过构件的概念了解构件的功能。构件的概
念包括构件的接口规约和语义两个方面。
●内容是对概念的具体实现,描述构件如何去完成概念所刻画的功能。
●上下文是构件和构件执行环境之间的关系。上下刻画构件的运行环境,为构件的选
择和修改提供指导。
3C模型到Web服务技术规范的对应关系如下:
●概念:Web服务描述语言(如WSDL)
显然WSDL描述了Web服务的接口规范,从接口我们可以了解Web服务的功能,包括其包含的操作以及这些操作的输入和输出。
●内容:Web服务组合语言(如BPEL4WS)
通过BPEL4WS我们可以具体描述Web服务在接收到操作调用消息后的处理细节。
●上下文:Web服务策略、协作、安全、事务等语言
除了基本的概念和内容,Web服务还需要许多上下文描述以刻画其具体的执行环境,比如通过WS-Policy可以描述Web服务使用者的偏好,通过WS-CDL可以描述多个Web服务在协作时要遵循的规则,通过WS-Security可以描述Web服务的安全上下文,而通过WS-Transaction可以描述Web服务的事务上下文。
因此构件描述的3C模型同样也为Web服务描述语言提供了良好的分类模型。
Web服务描述语言WSDL(Web Service Description Language)只描述了Web服务三方面的内容:接口、和网络传输协议的绑定、以及服务的访问端点。
我们已经知道,自描述是服务的基本特征之一,服务的松耦合特性正是基于服务描述来实现的。服务描述是服务提供者和服务消费者之间的纽带,服务提供者通过服务描述展示其功能、访问方式以及各种其他属性,而服务消费者也是通过服务描述了解服务,使用服务。
服务描述涉及服务的各个方面,以Web服务为例,很多规范都是为了描述Web服务,比如:
●WSDL:描述Web服务的接口、访问方式和地址。
●BPEL4WS:以过程的方式描述一个组合Web服务的内部结构。
●WS-CDL:描述Web服务之间的协作约束。
●WS-Policy:描述Web服务对调用的要求、服务的能力以及偏好选择。
●WS-Security:描述Web服务的安全特征。
●WS-Transaction:描述Web服务的事务特征。
而通过语义网技术,更是可以为服务添加语义描述信息,从而使服务能在在语义级别实现互操作。
从服务调用者的角度,我们通常所说的Web服务就是其WSDL描述,因此WSDL对理解Web服务及其重要,WSDL的结构模型正是Web服务的元结构模型。本章我们将重点介绍Web服务描述语言WSDL,包括其结构模型、隐含在操作定义中的通信模型、以及和底层通信协议的绑定。
服务分类树
服务标识
服务的功能描述(服务的名称功能前提效果)
资源数据模型输入和输出数据参数
过程模型
行为接口对外提供的接口函数
底层协议所使用协议、消息格式、序列化的方式、传输方式和服务寻址
质量约束时间(响应时间、执行时间)服务代价用户评价
服务的事物和安全因素