其中最后兩個(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)論
主站蜘蛛池模板: 日韩色视频一区二区三区亚洲 | 日韩欧美在线不卡 | 精品无码久久久久国产 | 久久亚洲精品国产精品婷婷 | 91aaa免费观看在线观看资源 | 欧美日韩精选 | 天天草狠狠干 | 亚洲综合视频在线观看 | 全部在线播放免费毛片 | 色婷婷久久综合中文久久一本 | 91精品久久久久亚洲国产 | 久久久这里只有精品加勒比 | 99视频在线看观免费 | 自拍偷自拍亚洲精品被多人伦好爽 | 欧美高清日韩 | 亚洲激情在线播放 | 国产精品美女 | 在线精品国产第一页 | 日日噜噜夜夜狠狠tv视频免费 | 久久国产欧美日韩高清专区 | 亚洲一区二区三区四区五区 | 九九热这里只有国产精品 | 国产成人不卡亚洲精品91 | 国产成人欧美一区二区三区的 | 天天干天天要 | 青草青青在线视频观看 | 精品国产品香蕉在线观看75 | 四虎永久在线观看 | 精品久久久久久中文字幕2017 | 成人国产亚洲欧美成人综合网 | 亚洲国产婷婷综合在线精品 | 久久精品99视频 | 日韩国产欧美视频 | 日本aa在线观看 | 国产成人啪午夜精品网站 | 久久久久久久性 | 亚洲免费视频在线 | 国产精品9999久久久久仙踪林 | 中文字幕曰韩一区二区不卡 | 久久久高清免费视频 | 亚洲久本草在线中文字幕 |