论文部分内容阅读
面向服务计算利用服务作为基本构造单元,支持分布式应用的快速、低成本的组合式开发。由于面向服务计算的动态性和不可预测性,在Internet环境下提供服务质量(Quality of Service, QoS)保障是一个困难而又意义重大的挑战。目前,在QoS保障方法上,主要从下述三个层面上展开:软件构造技术,资源配置技术和访问负载技术。本文针对复合服务在软件构造层面的QoS保障技术展开研究。随着服务计算的发展,Internet上现实可用的服务数量越来越多,另外一方面,这些服务之间存在着一些关联关系,并且,这些关联关系影响了某些服务的服务质量。现有的面向服务计算QoS保障技术体系尚未考虑到此现象,均以“服务之间相互独立,一个服务的服务质量独立于其他服务”作为假设。服务QoS描述没有考虑到服务之间的关联对服务QoS的影响,从而导致了在服务质量关联发生时,服务QoS描述所给出的QoS值偏离了服务实际的QoS值。而以偏离的QoS值作为QoS驱动的复合服务选择和复合服务QoS协商的基础,必然不利于复合服务QoS保障。本文主要针对“服务之间存在关联以及服务关联对服务QoS产生影响”这一现象,旨在通过一种方法,发现并且刻画服务关联关系,以及服务关联关系对QoS的影响;并且,就这一现象为QoS驱动的复合服务选择技术和复合服务QoS协商技术所带来的新挑战展开研究。首先,本文提出一种基于语义的服务质量关联关系发现方法。该方法针对服务之间存在关联关系,并且关联关系影响服务QoS这一现象,提出了一种服务关联关系发现方法,用于发现并刻画服务关联关系及服务关联关系对服务QoS的影响。该方法给出一个支持服务质量关联的服务QoS模型,该模型刻画了服务关联关系及其对服务QoS的影响。然而,该模型涉及到多个服务提供商提供的服务,单个服务提供商无法给出基于该模型的服务描述,因此,该方法还基于现有的OWL语言,并考虑到单个服务提供者的描述能力,给出一个服务模型,使得单个服务提供者能够基于该模型对其发布的服务进行描述。基于各个单个服务提供商对其发布的服务描述信息,本文给出了一种服务质量关联关系发现方法,将单个服务提供商给出的服务描述转换为支持服务质量关联的服务QoS模型。考虑到各个服务提供商给出的服务描述可能存在语义异构性问题,本文通过领域语义知识,克服服务质量关联发现过程中的语义异构性问题。另外,考虑到可能发生关联的服务存在动态变化性,本文通过服务质量关联逻辑断言,克服关联关系发现过程中的动态变化性问题。在方法效果的评价上,我们通过一个现实的复合服务实例Amazon Infrastructure Web Service,说明了本方法的有效性,即本文方法能够发现服务之间的关联关系及关联关系对服务QoS的影响。其次,本文提出一种QoS驱动的支持服务质量关联的复合服务选择方法。由于服务QoS的准确描述是QoS驱动的复合服务选择方法的基础,以偏离实际值的服务QoS描述作为复合服务选择的依据,必然不利于优化复合服务QoS。而现有复合服务选择方法无法应对考虑到服务关联关系的复合服务选择问题,本文提出了一种支持服务质量关联的QoS驱动的复合服务选择方法。该方法的主要思路是将QoS驱动的复合服务问题建模为0-1整数线性规划模型,并运用整数规划算法求解复合服务选择问题。然而,由于考虑到服务关联关系,使得模型失去线性性质,而非线性模型无法在多项式时间内求解。因此,本文提出了一个线性化定理,以将非线性模型转换为线性模型,从而能够在多项式时间内求解复合服务选择问题。在方法效果的评价上,我们通过实例Amazon Infrastructure Web Service的对比分析,说明本文方法在服务发生关联时,所选择出来的复合服务QoS明显优于现有不考虑关联关系的复合服务选择方法所选择出来的复合服务QoS。并且,性能分析试验表明,本文方法带来较小的额外性能开销。最后,本文提出一种基于历史启发的复合服务QoS协商方法。本文针对在用户需求较为苛刻或者可选服务不多时,无法直接获得有效选择方案,以及现有复合服务协商方法没有考虑到协商各方利益的最大化和公平化,而且效率低下的这一问题,给出了一种基于历史启发的复合服务QoS协商方法。该方法复合服务协商问题建模为优化模型,并在模型中体现协商各方利益的最大化和公平化。并且,通过对历史协商数据的挖掘,启发初解的选取和临域的构造,有效提高协商效率。在方法效果评价上,我们通过对比试验,表明本文方法协商效率较高,并且,协商结果体现了协商各方利益的最大化和公平化。