论文部分内容阅读
Internet资源的成长性、自治性和多样性,使得面向Internet的资源共享面临很大困难。基于Internet的虚拟计算环境(Internet-based Virtual Computing Environment,简称虚拟计算环境或iVCE)以资源主体化为基础,提出了按需聚合与自主协同核心机制,支持面向需求、依靠局部信息动态聚合资源,并通过分布自治资源间的自主协同来实现Internet资源的有效共享和综合利用。 随着面向服务计算(Service Oriented Compudng)和面向服务体系结构(Service Oriented Architecture)的迅速发展和广泛应用,服务逐渐成为Internet环境下资源封装与抽象的主流方式。虚拟计算环境中越来越多的资源被封装成服务对外发布和共享,服务逐渐成为虚拟计算环境中的一类重要资源。如何通过协同这些服务来实现特定的应用目标,实现资源的有效利用,即服务组装,成为了虚拟计算环境需要解决的一个关键问题。 从虚拟计算环境下服务组装的需求出发,现有服务组装研究与实践尚存在不足,主要表现为:首先,目前大部分服务组装方法采用集中式的协同方式,即由一个中央节点控制整个服务组装的执行,存在性能瓶颈和单点失效的问题,且不能自然地描述服务之间的对等协同,难以适应虚拟计算环境;其次,现有服务组装方法对可复用机制的支持尚不足,导致服务组装过程效率低下;最后,服务组装的动态适应能力尚待提高,目前大部分方法仅局限于简单的服务动态绑定和替换,而不能支持服务之间结构的动态调整。 为了解决上述问题,本文首先引入业务协议作为服务组装中的基本可复用单元。业务协议是若干对等实体为了实现一个可复用的、相对独立的业务功能而必须遵循的一系列交互规则的集合。从业务角度看,业务协议实现了一个相对独立的、可复用的业务功能;从软件复用角度来看,业务协议可视为一个可复用的服务组装构件。在此基础上,本文提出了一个基于业务协议的服务组装方法。本文主要特色和贡献包括: 1)提出了一种基于角色的业务协议建模方法,采用自顶而下方法对业务协议建模,分别设计了全局流程描述规约和角色局部流程描述规约,能够实现从全局流程到各角色局部流程的自动映射,并且将业务层次的建模与底层技术细节处理相分离,先获得具体实现无关的角色局部流程,再转换为抽象BPEL.流程,提高了业务协议的建模效率和业务协议的可复用性。 2)提出了一种基于行为的角色兼容性检查与适配方法,首先基于有限状态自动机给出了服务行为的形式化定义以及服务扮演角色应该满足的条件,并提出一种服务行为的自动抽取方法,以实现服务和角色间的行为兼容性检查;针对服务和角色行为失配的情况,在分析服务内部活动之间依赖关系的基础之上,设计了一种启发式的适配器自动生成算法,来尝试解决角色和服务之间行为失配问题。实验说明该方法能够有效地提高适配器的构造效率和适用范围,实现对部分死锁的自动处理。 3)提出了一种基于约束的业务协议组装方法,设计和实现了一种声明式的业务协议组装语言,支持基于约束的业务协议组装和基于策略的自适应功能定义,增加了业务协议之间结构的灵活性,实现了复合服务中自适应功能与业务功能的分离,从而有效地提高了复合服务的动态适应性。同时,实现了从基于约束的服务组装到标准WS-BPEL业务流程的自动转换,能够基于业务协议约束和适应策略定义,并根据运行时环境信息动态地(重新)生成WS—BPEL业务流程,既保持了与现有主流技术的兼容,也能更好地应对运行环境和业务需求的动态变化。 4)在上述研究的基础之上,设计并实现了一个服务组装原型系统,介绍了其主要机制和关键功能模块的设计与实现,并通过实例说明应用构建的过程,给出相应的性能评测结果。