亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        線程池調(diào)度對服務器性能影響的研究*

        2019-10-09 05:22:38
        通信技術 2019年9期
        關鍵詞:臨界點管理器正態(tài)分布

        彭 華

        (中國電子科技集團公司第三十研究所,四川 成都 610041)

        0 引 言

        隨著網(wǎng)絡和信息安全技術的快速發(fā)展,每天有數(shù)以萬計的用戶在不斷訪問各類大型網(wǎng)站,服務器需要并發(fā)處理大量的用戶連接請求。如何使服務器在面對大量訪問請求時仍能應付自如,成為需要迫切解決的問題。在服務器的網(wǎng)絡處理能力設計時,通常采用多路復用I/O機制加線程池技術實現(xiàn)[1]。

        但是,大量訪問請求產(chǎn)生的網(wǎng)絡連接可能導致頻繁的線程調(diào)度,從而消耗大量的系統(tǒng)額外時間,或者導致調(diào)度不及時,導致連接請求沒有及時響應和處理,最終導致線程池技術沒有發(fā)揮出預期的性能。如何設計服務器的線程池調(diào)度算法使其能夠盡可能發(fā)揮線程池的效能,是一個需要重點解決的問題。

        1 線程池技術

        1.1 采用線程池技術的原因

        創(chuàng)建和銷毀線程很費時,因為創(chuàng)建一個線程要獲取內(nèi)存資源或者其他更多資源。因此,提高效率的一個手段是盡可能減少創(chuàng)建和銷毀對象的次數(shù),特別是一些耗資源的對象創(chuàng)建和銷毀。為了節(jié)省對象創(chuàng)建和銷毀所產(chǎn)生的系統(tǒng)時間,需要準備一個容器用來保存一批這樣的對象。當需要使用這種對象時,不再需要每次去創(chuàng)建,而是直接從容器中取出現(xiàn)成的直接使用。由于節(jié)省了創(chuàng)建和銷毀對象所需的開銷,程序性能得以提升,而存放和管理這些線程對象的容器就是線程池[2]。

        1.2 線程池的組成

        如圖1所示,一般簡單線程池至少由以下3部分組成[2]。

        圖1 線程池組成結(jié)構

        線程池管理器:也稱為主控線程,用于創(chuàng)建和管理線程池中的工作線程,定時對任務隊列掃描、清理過期未提交工作線程執(zhí)行的積壓數(shù)據(jù)。

        工作線程:用于任務處理的獨立單元,并根據(jù)系統(tǒng)初始設定創(chuàng)建其數(shù)量,繁忙時會動態(tài)創(chuàng)建新工作線程。

        任務隊列:提供一種緩沖機制用于存放等待處理的任務,工作線程根據(jù)相應的原則從任務隊列中獲取數(shù)據(jù)處理。

        1.3 線程池的工作原理

        線程池采用預創(chuàng)建的技術,在應用程序啟動后,將立即創(chuàng)建一定數(shù)量的線程(N)放入空閑隊列中。這些線程處于阻塞狀態(tài),不消耗CPU,但占用較小的內(nèi)存空間。

        線程池中線程的數(shù)目是動態(tài)調(diào)整的。當任務到來后將其存入任務隊列,線程池管理器選擇一個空閑線程,把任務傳入此線程中運行。當線程池中的所有線程都處于繁忙狀態(tài)時,線程池自動創(chuàng)建新線程處理更多的任務;當線程池比較空閑時,線程池銷毀一部分空閑線程,釋放系統(tǒng)資源,只保留初始創(chuàng)建的N個線程[2]。

        1.4 線程池的優(yōu)點

        (1)可以控制產(chǎn)生線程的數(shù)量。通過預先創(chuàng)建一定數(shù)量的工作線程并限制其數(shù)量,控制線程對象的內(nèi)存消耗[3]。

        (2)降低系統(tǒng)開銷和資源消耗[3]。通過對多個請求重用線程,線程創(chuàng)建、銷毀的開銷被分攤到多個請求上。另外,通過限制線程數(shù)量,降低線程池在垃圾回收方面的開銷。

        (3)提高系統(tǒng)響應速度。線程事先已被創(chuàng)建,任務到達時可直接進行處理,消除了因線程創(chuàng)建所帶來的時間延遲。另外,多個線程可以并發(fā)處理[3]。

        1.5 線程池調(diào)度的作用

        線程池技術解決了服務器多個線程執(zhí)行的調(diào)試問題,可以使處理器盡量保持忙碌狀態(tài),充分利用系統(tǒng)的可用資源,顯著提高系統(tǒng)性能。但是,如果線程池調(diào)度策略設計不當也會事與愿違[4]。

        2 線程池調(diào)度實驗設計

        可以通過以下2個實驗測試線程池調(diào)度策略的參數(shù)取值對服務器性能和資源占用的影響。

        2.1 實驗一

        假設并發(fā)用戶連接總數(shù)為T,線程池初始線程數(shù)N,每個線程處理最多M個用戶連接。當有用戶連接請求時,線程池會隨機選擇一個線程對該連接請求進行處理。線程繁忙臨界點設為P(0%

        如圖2所示,當某一個工作線程的用戶連接數(shù)X=0時,說明該線程處于空狀態(tài);當用戶連接數(shù)X

        圖2 工作線程的運行狀態(tài)

        線程池調(diào)度周期為t,當所有工作線程處于忙狀態(tài)時,線程池管理器會新創(chuàng)建一個線程并加入線程池。

        以T=20 000、N=4、M=2 000、t=1 s為例,測試線程繁忙臨界點P在不同取值下的訪問完成時間和線程總數(shù)。

        2.2 實驗二

        根據(jù)概率論與統(tǒng)計學原理,自然界很多看似沒有規(guī)律可尋的隨機事件其實服從正態(tài)分布[5]。

        正態(tài)分布是一種自然分布,有極其廣泛的應用背景。在生產(chǎn)和科學實驗中,很多隨機變量的概率分布都可以近似用正態(tài)分布來表示。

        如圖3所示,正態(tài)分布有2個參數(shù),即期望值和標準差,可記作N(μ,σ)。

        圖3 正態(tài)分布

        正態(tài)分布有如下特性:

        假設在用戶訪問服務器的高峰時間段,用戶訪問總數(shù)為50萬,用戶訪問數(shù)量服從正態(tài)分布,如表1所示。

        表1 高峰時間段訪問服務器的用戶數(shù)

        測試線程繁忙臨界點P在取值30、60和90的情況下,高峰時段在各時間點的用戶完成數(shù)和耗時。

        3 實驗結(jié)果和分析

        實驗利用線程池方式實現(xiàn)的服務器做性能測試分析。服務器CPU為Intel Xeon 2.10 GHz雙核,內(nèi)存64 GB,操作系統(tǒng)Fedora Core 14。實驗一的測試結(jié)果如表2所示。

        表2 臨界點P對完成時間和線程數(shù)的影響

        將表2中的臨界點P在不同取值下的完成時間轉(zhuǎn)換為圖4,將表2中的臨界點P在不同取值下的處理線程數(shù)轉(zhuǎn)換為圖5。

        圖4 臨界點P在不同取值下的完成時間對比

        圖5 臨界點P在不同取值下的線程數(shù)對比

        綜合圖4和圖5可見,隨著臨界點P值的增大,用戶連接處理不及時的概率增加,導致用戶連接處理完成時間變長,降低了網(wǎng)絡服務器的性能。但是,如果臨界點P值設置過小,會在線程還未飽和的情況下提前創(chuàng)建新線程,導致線程數(shù)量增加,造成系統(tǒng)資源浪費。

        實驗二的測試結(jié)果,如圖6、圖7所示。

        分析圖6可知,在用戶訪問的高峰時間段,隨著臨界點P值的增大,服務器對高峰期用戶訪問請求的響應速度變慢,未及時處理的用戶訪問請求會被延遲到高峰期后處理。

        分析圖7可知,在用戶訪問的高峰時間段,隨著臨界點P值的增大,對高峰期用戶訪問請求的處理耗時會隨著用戶數(shù)的增加而增大,一旦到達服務器的處理極限后,會保持相同的處理耗時。結(jié)合圖6的分析可知,由于未及時處理的用戶訪問請求被延遲,所以處理耗時的下降拐點隨著臨界點P值的增大而延后。

        圖6 臨界點P在不同取值下的用戶完成數(shù)對比

        圖7 臨界點P在不同取值下的處理耗時對比

        綜上所述,線程池模型主要是通過線程池管理器對線程池進行并發(fā)調(diào)度。線程池管理器主要通過各個工作線程的負載情況和任務的優(yōu)先級別調(diào)度任務,使得線程池工作更加靈活,處理任務更加及時、高效。但是,由于線程池的工作調(diào)度依賴于線程池管理器調(diào)度算法,所以線程池性能主要受到調(diào)度策略和調(diào)度參數(shù)的影響[6]。因此,不同的服務器需要根據(jù)應用場景尋找最優(yōu)的線程池調(diào)度方案,使服務器性能與資源消耗達到平衡。

        4 結(jié) 語

        線程池技術為線程創(chuàng)建銷毀的開銷問題和系統(tǒng)資源不足的問題提供了一個較好的解決方案,尤其適用于大量用戶訪問請求的服務器應用[7]。但是,要使線程池的處理效率更高,對線程池的調(diào)度是一個要考慮的問題,且調(diào)度策略和調(diào)度參數(shù)要根據(jù)實際應用場景來設定。只有合理的線程池調(diào)度,才能發(fā)揮出線程池技術在服務器應用中的最大效能。

        猜你喜歡
        臨界點管理器正態(tài)分布
        基于臨界點的杭州灣水體富營養(yǎng)化多年變化研究
        海洋通報(2022年4期)2022-10-10 07:41:48
        應急狀態(tài)啟動磁盤管理器
        Windows文件緩沖處理技術概述
        基于對數(shù)正態(tài)分布的出行時長可靠性計算
        超越生命的臨界點
        政工學刊(2017年2期)2017-02-20 09:05:32
        正態(tài)分布及其應用
        超越生命的臨界點
        正態(tài)分布題型剖析
        χ2分布、t 分布、F 分布與正態(tài)分布間的關系
        高集成度2.5A備份電源管理器簡化鋰離子電池備份系統(tǒng)
        久热这里只有精品视频6| 亚洲av色av成人噜噜噜| 99久久99久久精品国产片| 无码人妻久久一区二区三区免费| 国产中出视频| 亚洲av五月天天堂网| 中文字幕一区久久精品| 亚洲国产精品成人综合色| 国模精品无码一区二区二区| 国产美女自拍国语对白| 亚洲一区二区三区国产| 精品丰满人妻无套内射| 中文字幕第一页亚洲| 男子把美女裙子脱了摸她内裤| 国产av一区二区亚洲精品| 久久久亚洲欧洲日产国码αv| 亚洲成人福利在线观看| 久久精品国产亚洲av调教| 痴汉电车中文字幕在线| 精品深夜av无码一区二区| 久久久久亚洲精品天堂| 亚洲精品国产熟女久久久| 乱子轮熟睡1区| 免费无码av片在线观看| 成人国产乱对白在线观看| 中美日韩在线一区黄色大片| 久久精品欧美日韩精品| 无码一级视频在线| 全程国语对白资源在线观看| 国产无套乱子伦精彩是白视频| 国产精品毛片无码| 日韩AV无码乱伦丝袜一区| 亚洲中文字幕剧情类别| 女人被男人躁得好爽免费视频| а天堂中文在线官网| 老男人久久青草AV高清| 午夜一区二区在线视频| аⅴ天堂中文在线网| 免费国精产品自偷自偷免费看| 久久中文字幕久久久久91| 国产夫妻自拍视频在线播放|