tomcat參數調優


1.配置項

 

2.連接數調整

    總連接數 = acceptCount+connections

    connections:tomcat能接收的請求限制

    acceptCount:超過tomcat能接收的請求以后,堆積在操作系統的數量(windows和linux略有不同)

 

什么時候需要調整connnections(springboot配置參數:server.tomcat.max-connections)?如何調整?

      connections小於maxThreads的時候,需要調大,最好是比預期的最高並發數要大20%,多出的請求堆積

到tomcat的worker處理線程池中

什么時候需要調整acceptCount(springboot配置參數:server.tomcat.accept-count)?

      想受理更多用戶請求,卻又不想堆積在tomcat中,利用操作系統來堆積,可以調整為最高並發數-connections

實際上不需要調整,tonmcat默認100,linux默認128,最好是把連接控制交給應用程序,這樣方便管理

線程數量(springboot配置參數:server.tomcat.max-threads)調為多少合適?

      線程太少,cpu利用率過低,程序吞吐量變小,資源浪費,容易堆積

      線程太多,上下文頻繁切換,性能反而降低

      理想的線程數量是(1+代碼阻塞時間/代碼執行時間)*線程數量

      實際情況是跑起代碼,使用jmeter之類的壓測工具進行壓測,不斷調整線程數,將cpu

打到80%-90%的利用率

3.總結

      請求多,cpu占用率高了,如果能接受慢響應,就加大線程數量,否則就集群分流

      優化代碼才是王道,配置知識錦上添花


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM