調(diào)整Tomcat的并發(fā)線程數(shù)到5000+
1. 調(diào)整server.xml的配置
先調(diào)整maxThreads的數(shù)值,在未調(diào)整任何參數(shù)之前,默認的并發(fā)線程可以達到40。
調(diào)整此項后可以達到1800左右。
?
<Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" maxThreads="32000" />
再試試使用非阻塞的庫。
<Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" maxThreads="32000" protocol="org.apache.coyote.http11.Http11NioProtocol" />
結果和不使用非阻塞的庫差不多。
?
線程數(shù)在2000左右。
2.調(diào)整用戶打開的文件數(shù)限制
?
ulimit -n 32768
調(diào)整后,線程數(shù)增加到了5900左右。
?
3.減少緩沖區(qū)大小到1024
?
... maxThreads="32000" socket.appReadBufSize="1024" socket.appWriteBufSize="1024" bufferSize="1024" ...
無效果
?
綜合來看,還是達不到10000并發(fā)。下次增加內(nèi)存再試試。
當前的內(nèi)存配置是1024M。
另外,在server.xml中的參數(shù) acceptCount ,保存的是,當并發(fā)請求數(shù)超過 maxThreads 時,系統(tǒng)還能存儲的請求的隊列的長度。默認是100。當隊列已經(jīng)滿了的時候,后續(xù)的請求 將獲得一個“connectin refused”的錯誤。
參考:
?
更多文章、技術交流、商務合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
