tomcat 大並發報錯 Maximum number of threads (200) created for connector with address null and port 80


1、INFO: Maximum number of threads (200) created for connector with address null and port 80

說明:最大線程數錯誤

解決方案:

使用線程池,用較少的線程處理較多的訪問,可以提高tomcat處理請求的能力。使用方式:

首先。打開/conf/server.xml,增加

<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"    
        maxThreads="500" minSpareThreads="20" maxIdleTime="60000" /> 

最大線程500(一般服務器足以),最小空閑線程數20,線程最大空閑時間60秒。

然后,修改<Connector ...>節點,增加executor屬性,如:

<Connector executor="tomcatThreadPool"    
               port="80" protocol="HTTP/1.1"    
               connectionTimeout="60000"  
               keepAliveTimeout="15000"  
               maxKeepAliveRequests="1"  
               redirectPort="443"  

2、java.net.SocketException: Too many open files

 

當tomcat並發用戶量大的時候,單個jvm進程確實可能打開過多的文件句柄。

使用 #lsof -p 10001|wc -l   查看文件操作數

如下操作:

1).ps -ef |grep tomcat  查看tomcat的進程ID,記錄ID號,假設進程ID為10001   
(2).lsof -p 10001|wc -l    查看當前進程id為10001的 文件操作數   
(3).使用命令:ulimit -a   查看每個用戶允許打開的最大文件數   
  默認是1024.   
(4).然后執行:ulimit -n 65536 將允許的最大文件數調整為65536 

 

來自:https://blog.csdn.net/ygd266/article/details/8255746


免責聲明!

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



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