[发明专利]基于分段的自适应动态调整线程池大小的方法在审
| 申请号: | 201810508398.8 | 申请日: | 2018-05-24 |
| 公开(公告)号: | CN108874537A | 公开(公告)日: | 2018-11-23 |
| 发明(设计)人: | 玄世昌;苘大鹏;王巍;杨武;李哲 | 申请(专利权)人: | 哈尔滨工程大学 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 150001 黑龙江省哈尔滨市南岗区*** | 国省代码: | 黑龙江;23 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 线程池 用户请求 自适应动态调整 调整因子 分段 用户请求量 大小调整 工作线程 监测线程 上升阶段 下降阶段 调整线 对线 下调 配置 | ||
本发明提供的是一种基于分段的自适应动态调整线程池大小的方法。一,配置线程池动态改变大小的上限Tmax和下限Tmin;二,如果用户请求数量处于上升阶段,使用调整因子向上调线程池的大小;三,如果用户请求数量处于平稳阶段,当用户的请求数大于线程池中的工作线程数量时,以用户请求量为调整线程池大小的目标;四,如果用户请求数量处于下降阶段,使用调整因子向下调线程池的大小;五,线程池大小调整分别同上限Tmax和下限Tmin比较,大于Tmax时,使用Tmax作为线程池大小;小于Tmin时,使用Tmin作为线程池的大小。本发明通过监测线程池的状态并对线程池的尺寸进行调整,最大限度地满足用户的需求。
技术领域
本发明涉及的是一种调整线程池大小的方法,具体地说是一种用于动态调整线程池大小的方法。
背景技术
在互联网技术中线程池得到了广泛的应用,通过引入线程池可以有效的管理线程、控制线程上限总数、以及减少创建和销毁线程所带来的开销。在实际应用中,随着业务的逐步庞大,一个系统对其他越来越多的系统调用增加,在系统中采用统一的线程池实例,可以统一有效的管理线程、减少创建和销毁线程的开销。
线程池技术正是减少线程创建和销毁开销需求的产物,是指在服务器内存中预先创建一定数量的线程,集中管理调度线程,从而来提高系统并发能力。线程池技术在网络类应用服务上有天然的优势,是因为线程池技术有以下特点:
1)线程池的大小可以控制;在内存中预先创建一定数量的线程,通过控制线程的数量,来控制线程池所消耗的内存。
2)对请求的响应速度快;请求到达时,直接使用已有的线程,不需要临时创建线程,可以在最短的时间内处理请求。多请求到达时,并发处理,不需要阻塞等待,并且能够复用线程资源,有效减少因为线程的创建和销毁引起的系统开销。
在线程池技术在应用服务上越来越流行,凡事都有两面性,线程池技术是基于多线程技术实现的,所以在克服传统多线程技术的缺点的同时,在应用的时候还是会有一定的风险,
(1)线程的数量没有上下限制,过于频繁的创建和销毁线程会增加系统的开销,与使用线程池的初衷(减少线程创建和销毁开销)相悖;当请求激增时,可能会因为资源耗尽引发系统的崩溃。
(2)线程的数量过大,系统中参与处理请求的线程过多,多线程之间的同步开销增减变得复杂,同时由于维持线程运行的系统内存开销加大,会造成系统响应的迟缓;
(3)线程的数量过小,线程池中的没有空闲线程,一个新的请求到达,需要放在阻塞队列中等待,影响系统的响应速度。
关于线程池大小调整的方法的公开文献较多,各有其优缺点。如申请号为201510974829.6的专利文件中公开的《用于调整线程池容量的方法及装置》只是对比系统资源对线程池大小的影响,从而找到最优的线程池大小。但是忽略了线程池大小中对任务或者用户请求的响应,导致在在多任务的硬件平台使用线程池时,调整策略失效。再如申请号为201610154360.6的专利文件中公开的《一种线程池管理方法及装置》,多任务共用同一个线程池,增加了线程池调度的复杂性,而且线程池的限制不合理,可能导致线程池频繁的创建和销毁线程池,增加了线程池使用时的资源消耗。
发明内容
本发明的目的在于提供一种能够更好地动态调整线程池大小的基于分段的自适应动态调整线程池大小的方法。
本发明的目的是这样实现的:
步骤一,对用户请求的历史数据进行分析,配置线程池动态改变大小的上限Tmax和下限Tmin;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810508398.8/2.html,转载请声明来源钻瓜专利网。





