[發(fā)明專(zhuān)利]用于調(diào)整線程池容量的方法及裝置在審
| 申請(qǐng)?zhí)枺?/td> | 201510974829.6 | 申請(qǐng)日: | 2015-12-22 |
| 公開(kāi)(公告)號(hào): | CN105630606A | 公開(kāi)(公告)日: | 2016-06-01 |
| 發(fā)明(設(shè)計(jì))人: | 趙欣;高隆林;韓峰;何忠勝;李得亮 | 申請(qǐng)(專(zhuān)利權(quán))人: | 山東中創(chuàng)軟件工程股份有限公司 |
| 主分類(lèi)號(hào): | G06F9/50 | 分類(lèi)號(hào): | G06F9/50 |
| 代理公司: | 北京匯澤知識(shí)產(chǎn)權(quán)代理有限公司 11228 | 代理人: | 張瑾 |
| 地址: | 250014 山東省*** | 國(guó)省代碼: | 山東;37 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用于 調(diào)整 線程 容量 方法 裝置 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)系統(tǒng)技術(shù)領(lǐng)域,尤其涉及一種用于調(diào)整線程池容量的方法 及裝置。
背景技術(shù)
當(dāng)前時(shí)代,網(wǎng)絡(luò)應(yīng)用隨處可見(jiàn),這些應(yīng)用對(duì)計(jì)算機(jī)系統(tǒng)的響應(yīng)速度、穩(wěn)健 性和整體性能都提出了較高的要求。線程池技術(shù)是滿足這些要求而采用的技術(shù) 之一,其通過(guò)提供若干個(gè)固定線程,輪流為大量的任務(wù)服務(wù),當(dāng)一個(gè)線程完成 任務(wù)時(shí),并不馬上銷(xiāo)毀,而是接手另一個(gè)任務(wù),從而減少創(chuàng)建和銷(xiāo)毀線程的消 耗,可以最大程度的利用系統(tǒng)的資源。因此現(xiàn)在的應(yīng)用服務(wù)器中大量使用線程 池技術(shù)。
現(xiàn)有的線程池調(diào)整策略都是基于用戶設(shè)定的最小值和最大值,應(yīng)用服務(wù)器 根據(jù)線程池的空閑情況在最小值和最大值之間進(jìn)行調(diào)整,不能突破最小值和最 大值。用戶通過(guò)設(shè)定線程池的最大值來(lái)限定線程池的容量。線程池的容量決定 了在指定時(shí)間內(nèi)能夠處理的并發(fā)任務(wù)數(shù),線程池的容量太小,導(dǎo)致所有的任務(wù) 都在排隊(duì)等待進(jìn)入線程池,造成堵塞,而線程池的容量太大,則造成系統(tǒng)資源 的浪費(fèi)。
在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下技術(shù)問(wèn)題:
現(xiàn)有線程池的調(diào)整技術(shù)局限于用戶配置,線程池容量不能進(jìn)行動(dòng)態(tài)調(diào)整, 在不能正確估計(jì)并發(fā)任務(wù)數(shù)的情況下會(huì)導(dǎo)致并發(fā)任務(wù)數(shù)超過(guò)預(yù)期值的時(shí)候,線 程池所在設(shè)備響應(yīng)慢。
發(fā)明內(nèi)容
本發(fā)明提供的用于調(diào)整線程池容量的方法及裝置,能夠使線程池所在設(shè)備 提供更強(qiáng)大的服務(wù)支撐能力,解決由于參數(shù)配置不當(dāng)導(dǎo)致的性能瓶頸,能夠提 高線程池所在設(shè)備的響應(yīng)速度。
第一方面,本發(fā)明提供一種用于調(diào)整線程池容量的方法,包括:定期采集 線程池使用線程數(shù);計(jì)算預(yù)定時(shí)間內(nèi)連續(xù)多次采集到的線程池使用線程數(shù)的平 均值;計(jì)算所述平均值占線程池最優(yōu)最大值的百分比S,其中所述最優(yōu)最大值為 當(dāng)前線程池使用的最大值并且所述線程池最優(yōu)最大值的初始值被設(shè)置為用戶配 置線程池最大值;根據(jù)所述百分比S以及所述線程池所在設(shè)備的CPU的使用率 和內(nèi)存的使用率,調(diào)整線程池最優(yōu)最大值。
可選地,在所述定期采集線程池使用線程數(shù)之前,還包括:判斷已經(jīng)啟動(dòng) 線程池自調(diào)優(yōu)模式。
可選地,所述根據(jù)所述百分比S以及所述線程池所在設(shè)備的CPU的使用率 和內(nèi)存的使用率,調(diào)整線程池最優(yōu)最大值包括:判斷所述百分比S是否大于預(yù) 定閾值P;如果是,則判斷所述線程池所在設(shè)備的CPU的使用率和內(nèi)存的使用 率是否均小于預(yù)定閾值L;如果是,則增大線程池最優(yōu)最大值。
可選地,所述根據(jù)所述百分比S以及所述線程池所在設(shè)備的CPU的使用率 和內(nèi)存的使用率,調(diào)整線程池最優(yōu)最大值包括:判斷所述百分比S是否大于預(yù) 定閾值P,如果否,則判斷所述百分比S是否小于預(yù)定閾值Q,其中P大于Q; 如果是,則計(jì)算所述平均值占用戶配置線程池最大值的百分比R;判斷所述百分 比R是否小于預(yù)定閾值Q;如果是,則將當(dāng)前線程池最優(yōu)最大值設(shè)置為用戶配 置線程池最大值。
可選地,在所述判斷所述百分比S是否小于預(yù)定閾值Q之前,所述方法還 包括:判斷所述當(dāng)前線程池最優(yōu)最大值是否大于用戶配置線程池最大值,若是, 則判斷所述百分比S是否小于預(yù)定閾值Q。
第二方面,本發(fā)明提供一種用于調(diào)整線程池容量的裝置,包括:采集模塊, 用于定期采集線程池使用線程數(shù);第一計(jì)算模塊,用于計(jì)算預(yù)定時(shí)間內(nèi)連續(xù)多 次采集到的線程池使用線程數(shù)的平均值;第二計(jì)算模塊,用于計(jì)算所述平均值 占線程池最優(yōu)最大值的百分比S,其中所述最優(yōu)最大值為當(dāng)前線程池使用的最大 值并且所述線程池最優(yōu)最大值的初始值被設(shè)置為用戶配置線程池最大值;調(diào)整 模塊,用于根據(jù)所述百分比S以及所述線程池所在設(shè)備的CPU的使用率和內(nèi)存 的使用率,調(diào)整線程池最優(yōu)最大值。
可選地,所述裝置還包括第一判斷模塊;所述第一判斷模塊用于判斷已經(jīng) 啟動(dòng)線程池自調(diào)優(yōu)模式。
可選地,所述裝置還包括第二判斷模塊;所述第二判斷模塊用于判斷所述 百分比S是否大于預(yù)定閾值P,如果是,則判斷所述線程池所在設(shè)備的CPU的 使用率和內(nèi)存的使用率是否均小于預(yù)定閾值L;所述調(diào)整模塊用于在所述百分比 S大于預(yù)定閾值P且所述線程池所在設(shè)備的CPU的使用率和內(nèi)存的使用率均小 于預(yù)定閾值L時(shí),增大線程池最優(yōu)最大值。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于山東中創(chuàng)軟件工程股份有限公司,未經(jīng)山東中創(chuàng)軟件工程股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510974829.6/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 色相調(diào)整系統(tǒng)及其調(diào)整方法
- 調(diào)整設(shè)備和調(diào)整方法
- 踏板調(diào)整結(jié)構(gòu)及調(diào)整步態(tài)的調(diào)整方法
- 立體深度調(diào)整和焦點(diǎn)調(diào)整
- 調(diào)整裝置及其調(diào)整方法
- 噴嘴調(diào)整工具及調(diào)整方法
- 調(diào)整系統(tǒng)及調(diào)整方法
- 調(diào)整裝置以及調(diào)整方法
- 環(huán)境調(diào)整系統(tǒng)、環(huán)境調(diào)整方法及環(huán)境調(diào)整程序
- 功率調(diào)整器(調(diào)整)
- 在多線程處理器中用于高速線程間中斷的方法和設(shè)備
- 一種多線程系統(tǒng)中實(shí)現(xiàn)實(shí)時(shí)監(jiān)控各線程狀態(tài)的方法
- 移動(dòng)終端系統(tǒng)線程池實(shí)現(xiàn)方法及裝置
- 一種基于策略模式的信號(hào)發(fā)生器多線程管理方法
- 多線程并發(fā)處理方法和多線程并發(fā)處理系統(tǒng)
- 分布式系統(tǒng)的線程管理方法和裝置
- 線程執(zhí)行方法、裝置、終端及存儲(chǔ)介質(zhì)
- 線程監(jiān)控方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種多核系統(tǒng)中多線程調(diào)度方法、裝置及設(shè)備
- 線程間通信方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)





