第一:使用tomcat 线程池。
请看
tomcat 高并发 这篇文章解决。
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
<Connector executor="tomcatThreadPool" port="80" protocol="HTTP/1.1" maxThreads="2000" minSpareThreads="100" maxSpareThreads="300" connectionTimeout="20000" redirectPort="443" URIEncoding="UTF-8" />
优化请看 tomcat 高并发 这篇文章解决。
第二:加大jvm 允许存在的最大线程数
请参考 java 最大線程數理解 .
我的解決方案是:
| ||||||
再32位的操作系統中,單個jvm 進程中可用最大內存爲2G。那麼除去permSize,
測試 使用jre 32 位 ,jvm 參數爲-Xms512m -Xmx1024m -Xss128k 能創建 1000 左右的線程。
再64位的操作系統中,物理內存達到8G,使用jre 64位,jvm 參數爲:-Xms512m -Xmx1024m -Xss128k,線程數可高達上萬。
第四:使用apache+tomcat 做集群。

本文介绍了通过配置Tomcat线程池、调整JVM参数、采用64位JRE及操作系统以及实现Apache+Tomcat集群等多种方式来提高Tomcat服务器处理高并发请求的能力。

1851

被折叠的 条评论
为什么被折叠?



