论文部分内容阅读
云计算以“一切皆为服务”的思想和形式向用户提供虚拟化的应用计算资源、开放的标准、可伸缩的系统和面向服务的架构,使云服务提供商以灵活且实惠的方式提供可靠的、随需应变的服务给用户。随着社会的发展,单个服务已无法满足人们对复杂功能的需求,而将若干个功能简单的服务通过一定的模型组织以实现更高的质量、更复杂的功能,是云计算服务的根本特征和发展趋势。由于服务组合是由不同组织发布、分布在Internet上、具有自治特征的软件组件,在动态、复杂、多变的云服务组合环境下,QoS(Quality of Service)成为影响服务组合能否成功的关键因素之一。由于用户对于服务的需求已经从功能单一云服务转变为服务类聚合云服务,如何在定性描述模型的基础上考虑服务质量指标的量化建模,如何科学地设计高质量的云服务及动态、高效、客观地评估云服务的服务质量是云计算工程面临的挑战性课题。在云服务计算模式下,服务的超大规模性、高复杂性、失效类型多样性、虚拟化管理和资源动态变化等特性,使得传统的服务组合评估技术难以适应云服务的新特点和新需求。云服务组合的本质是提高服务质量QoS,也是增强软件的复用率和缩短软件研发周期一种有效的可伸缩计算模式。QoS作为评价用户服务适合度的重要内在属性,反映了网络在保证信息传输和满足服务要求方面的能力。本文针对云服务组合中QoS存在的问题,深入分析传统的服务组合评估方法,系统研究了云服务组合的体系架构、模型建立、评估优化、验证方法等关键技术,构建面向云用户请求的服务质量模型和相应实现过程,通过对评估模型动态规划的优化分析,提出一种改进的优化策略,实现用户最佳的服务组合选择。论文的主要工作具体分为四个方面:1.针对传统云服务组合存在的业务逻辑与服务质量的不确定性,以及时序、时间窗约束的限制性,基于云服务业务流程管理的特点,给出了BPEL流程的云服务组合实现框架;在随机Petri网理论的基础上对云服务组合生命周期QoS进行细粒度描述,探讨了BPEL流程活动向组合云服务流程网模型(CCSPNet)转换的建模方法,并以此为基础,提出了基于马尔科夫过程的动态云服务QoS评估模型。2.针对云服务的具体特点,分析了云服务组合的各项质量指标及其意义,提出了基于马尔科夫过程的云服务组合QoS量化评估方法,实现了对性能、可靠性、代价等多维指标的量化求解,在此基础上,提出了六维多层次动态云服务组合QoS计算方法,实现了在动态云服务组合中按照用户的QoS需求对组合服务中的服务类进行选择,将组合服务提交给用户执行的服务流程;针对当前服务质量的不足,提出了组合云服务的QoS优化设计方法。3.针对服务组合过程中的动态性、不稳定性以及多种QoS属性限制等问题,提出一个适应服务组合的改进蚁群算法WJ-I-ACO算法,WJ-I-ACO算法包括局部优化算法和全局优化算法两部分,局部优化算法利用聚类分析的方法将服务属性相同或相近的服务进行类聚,减少蚁群算法的搜寻节点,实现算法的局部优化。全局优化算法利用两条路径的动态差分平方统计量将相近的路径进行合并,实现蚁群算法的全局优化,两种优化算法使WJ-I-ACO算法能够适应服务组合优化过程中发生的服务无效,以及自适应服务中QoS变化等情况。4.通过Active BPEL执行引擎获得基于BPEL服务组合实例实际运行的日志数据,验证了基于马尔科夫过程的动态云服务组合评估模型的正确性,通过MATLAB仿真对一个服务组合实例的多次模拟迭代、循优求解验证了WJ-I-ACO算法的有效性和可行性,并在实验基础上对服务组合策略进行了改进。