tomcat 下部署的应用出现ava.lang.OutOfMemoryError: unable to create new native thread ,解决方案。

第一:使用tomcat 线程池。

请看  

tomcat 高并发 这篇文章解决。

 
    

优化请看  tomcat 高并发   这篇文章解决。

第二:加大jvm 允许存在的最大线程数

请参考 java 最大線程數理解 .

我的解決方案是:

 -Xms512m -Xmx1024m -Xss128k
第三:使用64位的jre ,tomcat,操作系統

再32位的操作系統中,單個jvm 進程中可用最大內存爲2G。那麼除去permSize,

測試 使用jre 32 位 ,jvm 參數爲-Xms512m -Xmx1024m -Xss128k 能創建 1000 左右的線程。

再64位的操作系統中,物理內存達到8G,使用jre 64位,jvm 參數爲:-Xms512m -Xmx1024m -Xss128k,線程數可高達上萬。

第四:使用apache+tomcat 做集群。



你可能感兴趣的:(j2se,服務器部署)