网络环境中应用的按需部署技术研究

来源 :北京大学 | 被引量 : 0次 | 上传用户:jojoy9912004
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
对计算资源实现按需使用是软件应用保障性能并提高资源利用率的一种主要手段。所谓按需,是指当计算资源不足而导致应用性能不能达到要求时,应用可以占有并使用额外的资源以保障其性能;而当资源过剩时,又可释放掉多余的资源,从而减少浪费、节约成本。随着Internet的飞速发展,软件应用所处的环境变得越来越开放。一方面,开放的环境使得软件应用时刻面临着动态多变的用户访问请求。另一方面,开放性打破了软件为硬件的能力而量身定做的固定性。因而,可以看到,开放性进一步加剧了资源供需不匹配的矛盾。在网络环境中,需要促使软件应用按需使用资源,才能实现其高效运行。  软件应用运行的实质就是计算逻辑运行在计算资源之上。在网络环境中,计算资源被分散在多个网络节点,因而,应用对资源的按需使用要以其模块在网络节点上灵活可变的部署执行作为保障。当资源不足时,可以将部分应用模块转移到新获取的网络节点上执行,从而通过占有额外的资源来保障应用性能;而当资源过剩或网络条件不佳导致获取额外资源的难度增大时,又可将它们移回,从而实现对资源的节省并确保应用正常运行。本文将以上这种应用部署到网络节点的拓扑结构随资源需要而进行的动态调整称为按需部署。  当按需使用资源成为网络环境中软件应用的必然要求时,如何实现应用的按需部署就成了一个亟待研究的问题,面临着以下两个基本挑战:(1)如何产生可按需部署的应用模块。对资源的按需使用要求应用的任一部分在必要时都可相对于其他部分而在本地或远程部署执行。应用模块间的本地或远程调用应随部署的变化而改变;(2)如何制定部署方案并实现对部署的动态调整,从而保障应用性能并提高资源利用率。  为了解决上述问题,本文建立了一套网络环境中应用按需部署的技术框架,其主要特色和贡献包括:  (1)提出了一种支持软件应用中计算逻辑按需远程执行的程序结构及自动程序重构方法。该结构打破了应用模块间本地或远程交互方式的固定性,使得任一应用类可在必要时可被分离至远程执行以占有节点资源,或被回收到本地执行以节省资源。部署执行的变化对应用的其他部分保持透明。同时,给出了一组以该结构为目标的程序重构步骤来自动完成可按需部署的应用模块的产生工作。  (2)提出一种按需匹配资源供需的部署方案生成方法。重构后应用的模块粒度可以通过改变它们之间本地或远程交互方式而进行调节。在极端情况下,每个应用类可以看成是一个模块,而整个应用也可以看成是一个模块。因此,该方法通过程序分析得出应用模块间交互的紧密程度,从而将关系紧密的模块视作一个复合模块,继而形成一幅模块的聚合分解层次图,对应了应用中不同组成部分对计算资源的消耗量。在生成部署方案时,根据当前节点资源配置,首先选择该图某一层中各个模块都能满足资源约束的这些模块来作为部署实施的对象,接着计算出不同的部署方案中哪个方案最能满足应用高效运行的要求,并按照该方案完成部署,从而有效解决了现有部署方案生成方法在资源供给与需求不匹配时难以产生优质方案的问题。  (3)提出一种基于网络节点软硬件栈资源可调特性的嵌套式的部署调整方法。环境条件的变化可能导致现有资源不能支撑应用高效运行,因而需要对应用的部署进行调整。然而,直接改变部署的拓扑结构会带来高昂的运行时开销。为此,该方法利用应用在部署后其组成模块一般运行在中间件等软件平台,而整个软件栈又越来越多地在虚拟机上运行的现状,给出了一个“内-中-外”三层嵌套式的部署调整环路:通过基于中间件服务等级调节的资源消费调整内环、虚拟机资源拥有量调整中环以及部署拓扑结构调整外环的嵌套式循环来保障应用性能并实现对资源的高效利用。  (4)设计并实现了一个支持Java应用进行按需部署的支撑系统SM@Rted。系统包含应用重构器、部署方案生成器以及嵌套式调整器等核心模块。SM@Rted可对Java应用的字节码进行重构,因而不但能支持新构造的应用,也适用于遗产应用。SM@Rted可作为一个单独的框架使用,也能被集成到各种主流开发平台或商业软件中,以帮助开发者或用户更快更好地完成应用部署工作。通过SM@Rted,应用中的计算逻辑可自动且透明地实现按需远程执行来完成对计算资源的按需使用,从而保障了应用高效运行。  本文以Java应用的两种极限情况:GoGame为代表的Android单机应用和RUBiS为代表的EJB分布式应用作为研究实例贯穿全文,并通过这些实例展示了相关主要方法的有效性。
其他文献
图像超分辨率重建的目的是在不增加成像传感器数目的前提下,突破物理系统结构制约,以较低代价最大限度的增强成像系统分辨率和成像质量,有效的利用成像系统的观测数据和先验知识
近年来,互联网应用的高速发展和电信、交通、金融等各个领域数据规模的快速增长,大规模数据处理的应用日益显著。Google提出的MapReduce编程模型由于其高伸缩性、容错性和易用
当前,受到功耗、散热等因素的制约,单纯提高CPU主频已经难以近一步提高计算机系统的整体性能.作为计算机体系结构的一大发展方向,人们着力于在单块CPU上集成更多计算核心,以通过
标定点提取是三维模型重建系统中相机参数标定过程中的重要步骤。为了满足三维模型重建系统对相机参数标定的需要,本文在标定点提取问题上给出了单标定板和多标定板两种解决
随着Web服务技术被广泛认可并被大量运用到实际的生产环境中,从海量的现有服务中快速准确的发现需求服务,并且灵活有效的与现有系统进行绑定就成为Web服务系统的一个关键问题。
我们研究无序正则表达式的推断和确定性判定问题。无序操作符并不会增加正则表达式的表达能力,然而,它的引入会使语言的表达式表示指数式简洁。  本文首先研究无序模式推断问
傅里叶变换红外光谱技术由于其具有快速、整体、无损鉴定复杂混合物体系的优点,在石油化工、食品工业、制药工业等一些相关领域得到了广泛的应用。复杂混合物的定性分析一直
随着信息技术的不断发展,在给人们的生活和工作带来便利的同时,信息安全问题也日趋严重。其中秘密信息的安全存储作为安全系统中的重要组成部分,逐渐成为很多学者的研究重点。自
可信计算是保证计算机安全的关键技术,它以BIOS固件层为起点,逐层直至应用程序进行安全校验,从而从根本上保证了计算机安全。作为可信计算平台的核心模块,TPM(Trusted Platform M
近年来,随着互联网和移动通信技术的飞速发展和广泛应用,关于信息安全的研究日益受到人们的重视,而密码算法作为信息安全中不可或缺的一部分,其安全性的分析引起国内外学者的关注