论文部分内容阅读
随着互联网技术的飞速发展,用户对资源的需求日益增加,但传统的资源配置方式往往会产生资源浪费。近年来兴起的云计算由于其资源共享、弹性供给等优点,受到了广泛的关注和研究。多租户技术作为云计算的关键特性之一,允许多个租户组织共享同一资源实体,从而优化资源配置。而在现有的几种多租户模式中,高共享程度的多租户模式由于其资源利用率高,可承载租户数量大,正逐渐受到关注。
然而,这种多租户模式在高度共享系统资源的同时,也带来了对租户资源管理的挑战。由于高共享程度的多租户往往在应用服务器进程内部进行租户的划分,这使得租户行为难以预测,容易造成资源使用不均衡和性能干扰。传统的性能管理方法往往无法对资源侵占和性能隔离等问题进行细粒度的处理,针对这些问题,本文设计了Web应用服务器多租户性能管理系统,提供了一种细粒度的性能管理方案。
首先,本文给出了一种基于工作管理器的多租户管理框架,通过将租户应用以及应用内部组件与工作管理器相绑定,使租户整体以及局部单元都可被感知和管理。其次,提出了基于信号量的多租户并发控制方法以及并发容量调整方法。前者对租户请求进行并发控制的同时,在一次请求处理过程中复用Web应用服务器工作线程,避免了已有方法所产生的交互协议重构问题;后者对租户的最大并发规模进行调整,以适应租户负载动态变化时所产生的性能波动,解决租户隔离以及资源侵占的问题。最后设计了一种基于kalman滤波的资源估算方法,对租户的CPU资源使用情况进行估算,以解决高度共享模式下多租户资源利用率难以获得的问题。
基于上述的设计,本文实现了一个Web应用服务器多租户性能管理系统,可以对应用服务器上的租户进行细粒度的管理,并支持工作管理器自动绑定。同时提供完善的租户工作状态收集机制。在此基础上,实现上述的多租户并发控制方法和资源估算方法。根据管理系统提供的管理接口,设计了管理服务工具,增强系统的易用性。系统测试结果表明,该性能管理系统能够较好地对Web应用服务器上的多租户应用进行管理,提供良好的性能隔离效果和性能保证。