其中最后兩個(gè)參數(shù)意義如下:maxThreads:tomcat起動(dòng)的最大線程數(shù),即同時(shí)處理的任務(wù)個(gè)數(shù),默認(rèn)值為200acceptCount:當(dāng)tomcat起動(dòng)的線程數(shù)達(dá)到最大時(shí),接" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

tomcat的maxThreads、acceptCount(最大線程數(shù)

系統(tǒng) 2283 0

tomcat 6的Connector配置如下

      
        <
      
      
        Connector 
      
      
        port
      
      
        ="8080"
      
      
         protocol
      
      
        ="HTTP/1.1"
      
      
        
connectionTimeout
="20000"
redirectPort
="8443"
maxThreads
="800" acceptCount ="1000" />

?其中最后兩個(gè)參數(shù)意義如下:

maxThreads :tomcat起動(dòng)的最大線程數(shù),即同時(shí)處理的任務(wù)個(gè)數(shù),默認(rèn)值為200

acceptCount :當(dāng)tomcat起動(dòng)的線程數(shù)達(dá)到最大時(shí),接受排隊(duì)的請(qǐng)求個(gè)數(shù),默認(rèn)值為100

?

這兩個(gè)值如何起作用,請(qǐng)看下面三種情況

情況1:接受一個(gè)請(qǐng)求,此時(shí)tomcat起動(dòng)的線程數(shù)沒有到達(dá)maxThreads,tomcat會(huì)起動(dòng)一個(gè)線程來處理此請(qǐng)求。

情況2:接受一個(gè)請(qǐng)求,此時(shí)tomcat起動(dòng)的線程數(shù)已經(jīng)到達(dá)maxThreads,tomcat會(huì)把此請(qǐng)求放入等待隊(duì)列,等待空閑線程。

情況3:接受一個(gè)請(qǐng)求,此時(shí)tomcat起動(dòng)的線程數(shù)已經(jīng)到達(dá)maxThreads,等待隊(duì)列中的請(qǐng)求個(gè)數(shù)也達(dá)到了acceptCount,此時(shí)tomcat會(huì)直接拒絕此次請(qǐng)求,返回connection refused

maxThreads如何配置

一般的服務(wù)器操作都包括量方面:1計(jì)算(主要消耗cpu),2等待(io、數(shù)據(jù)庫等)

第一種極端情況,如果我們的操作是純粹的計(jì)算,那么系統(tǒng)響應(yīng)時(shí)間的主要限制就是cpu的運(yùn)算能力,此時(shí)maxThreads應(yīng)該盡量設(shè)的小,降低同一時(shí)間內(nèi)爭搶cpu的線程個(gè)數(shù),可以提高計(jì)算效率,提高系統(tǒng)的整體處理能力。

第二種極端情況,如果我們的操作純粹是IO或者數(shù)據(jù)庫,那么響應(yīng)時(shí)間的主要限制就變?yōu)榈却獠抠Y源,此時(shí)maxThreads應(yīng)該盡量設(shè)的大,這樣才能提高同時(shí)處理請(qǐng)求的個(gè)數(shù),從而提高系統(tǒng)整體的處理能力。此情況下因?yàn)閠omcat同時(shí)處理的請(qǐng)求量會(huì)比較大,所以需要關(guān)注一下tomcat的虛擬機(jī)內(nèi)存設(shè)置和linux的open file限制。

我在測(cè)試時(shí)遇到一個(gè)問題, maxThreads 我設(shè)置的比較大比如3000,當(dāng)服務(wù)的線程數(shù)大到一定程度時(shí),一般是2000出頭,單次請(qǐng)求的響應(yīng)時(shí)間就會(huì)急劇的增加,

百思不得其解這是為什么,四處尋求答案無果,最后我總結(jié)的原因可能是cpu在線程切換時(shí)消耗的時(shí)間隨著線程數(shù)量的增加越來越大,

cpu把大多數(shù)時(shí)間都用來在這2000多個(gè)線程直接切換上了,當(dāng)然cpu就沒有時(shí)間來處理我們的程序了。

以前一直簡單的認(rèn)為多線程=高效率。。其實(shí)多線程本身并不能提高cpu效率,線程過多反而會(huì)降低cpu效率。

當(dāng)cpu核心數(shù)<線程數(shù)時(shí),cpu就需要在多個(gè)線程直接來回切換,以保證每個(gè)線程都會(huì)獲得cpu時(shí)間,即通常我們說的并發(fā)執(zhí)行。

所以 maxThreads 的配置絕對(duì)不是越大越好。

現(xiàn)實(shí)應(yīng)用中,我們的操作都會(huì)包含以上兩種類型(計(jì)算、等待),所以maxThreads的配置并沒有一個(gè)最優(yōu)值,一定要根據(jù)具體情況來配置。

最好的做法是:在不斷測(cè)試的基礎(chǔ)上,不斷調(diào)整、優(yōu)化,才能得到最合理的配置。

acceptCount的配置 ,我一般是設(shè)置的跟maxThreads一樣大,這個(gè)值應(yīng)該是主要根據(jù)應(yīng)用的訪問峰值與平均值來權(quán)衡配置的。

如果設(shè)的較小,可以保證接受的請(qǐng)求較快相應(yīng),但是超出的請(qǐng)求可能就直接被拒絕

如果設(shè)的較大,可能就會(huì)出現(xiàn)大量的請(qǐng)求超時(shí)的情況,因?yàn)槲覀兿到y(tǒng)的處理能力是一定的。

tomcat的maxThreads、acceptCount(最大線程數(shù)、最大排隊(duì)數(shù))


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦?。?!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 天天狠狠色综合图片区 | 97se亚洲综合 | 久久福利青草精品免费 | 日本免费一级视频 | 久久国产香蕉一区精品 | 9191在线精品播放 | 成人亚洲欧美日韩在线观看 | 亚洲日本欧美产综合在线 | 久久中文字幕亚洲精品最新 | 久久久久久久99久久久毒国产 | 天天爱天天做天天爽天天躁 | 俄罗斯一级毛片免费播放 | 日日操操干干 | 日本高清不卡免费 | 久久精品国产精品亚洲人人 | 久久国产精品久久国产片 | 久久精品观看 | 国产自产视频在线观看香蕉 | 尹人香蕉久久99天天拍欧美p7 | 久久精品vr中文字幕 | 人人做人人爽久久久精品 | 欧美黄色第一页 | 九月婷婷综合 | 欧美综合激情 | 久久国产高清字幕中文 | 欧美日韩中文字幕在线手机版本 | 亚洲精品久久久久午夜 | 国产精品不卡在线 | 国产欧美亚洲精品第二区首页 | 国产精品成人va | 一级特级aaa毛片 | 日本不卡免费高清一级视频 | 国产福利视频精品 | 精品精品国产理论在线观看 | 国产欧美成人免费观看视频 | 天天色天天舔 | 99久国产| 久久大香伊蕉在人线国产昨爱 | 91国视频在线观看 | 久久精品国产一区二区 | 国产午夜视频在线观看第四页 |