论文部分内容阅读
近些年来随着网络技术的不断发展,通过网络来访问异地的计算服务的条件也越来越成熟,并且逐步发展成为今天炙手可热的我们称之为“云计算”的技术。当下虽然人们越来越了解和认识云计算,可是到目前却依然没有一个被大众所广泛认可的云计算的概念,从本质上来说,作为一项热门的服务技术,Internet是云计算为其客户提供服务的重要媒介,人们可以通过万维网来获取云服务。因其计算能力强大、成本低廉越来越受到大中小企业的青睐。但是现实中用户的需求是各种各样的,在服务器端的设备和任务大多都是异构的,并且现在的云服务提供企业不存在业内统一认知的标准和规则,都有自己的任务分配模式,这些原因使得云计算的任务分配更加的复杂化。在云计算里,任务分配的有效度相当重要,对云计算系统的整体服务性能来说影响巨大。所在云计算环境下研究任务分配算法直接关系着云系统的可用性和服务性能,同时为以后的理论和实践的研究打下坚实基础。本文主要从以下几个方面进行了研究工作:(1)在进行深入分析研究了现有的蚁群算法的理论基础上,对其进行任务分配算法的数学建模,并且通过实验分析了其存在的不足和需要改进的可行性;(2)基于蚁群算法存在的时间复杂度较高,训练时间长的不足首次提出了基于动态规划的云任务分配算法。蚁群算法在处理海量任务时训练时间较长严重影响用户的服务满意度,而本文提出的动态规划的任务分配算法利用动态规划思想对任务进行的动态的分配,而且因为动态规划的最优子结构以及重叠子问题的特点使得算法的时间复杂度较低,任务分配过程中不但考虑到用户体验的满意程度而且也能充分的考虑系统的负载平衡性,达到或接近任务分配的最优方案。(3)通过基于CloudSim云平台进行仿真实验,实验结果表明,该算法可有效避免子问题的重复计算,有效降低算法的时间复杂度,提高任务分配效率和系统资源的利用率,在任务完成时间和负载平衡性上上优于蚁群算法和CloudSim3.0自带的自动轮循算法。(4)由于动态规划的任务分配算法在时间复杂度上仍然有减少的空间,本文提出了基于改进的动态规划算法的任务分配策略,实验证明,改进后的算法保持原算法的空间复杂度不变的基础上有效降低了时间复杂度。本文提出的动态规划的云任务分配策略的研究取得了一定的成果,并且本文的研究思路也将为以后的云计算任务分配策略的研究提供参考和帮助。