我的日常

登录/注册
您现在的位置:论坛 盖世程序员(我猜到了开头 却没有猜到结局) 运维优化 > 调整Tomcat的并发线程
总共48086条微博

动态微博

查看: 1823|回复: 0

调整Tomcat的并发线程

[复制链接]

279

主题

41

听众

689

金钱

版主

该用户从未签到

跳转到指定楼层
楼主
发表于 2014-12-22 11:43:15 |只看该作者 |倒序浏览
调整Tomcat的并发线程数到5000+

1. 调整server.xml的配置

先调整maxThreads的数值,在未调整任何参数之前,默认的并发线程可以达到40。

调整此项后可以达到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"
/>
结果和不使用非阻塞的库差不多。
线程数在2000左右。
2.调整用户打开的文件数限制
ulimit -n 32768
调整后,线程数增加到了5900左右。
3.减少缓冲区大小到1024
...
maxThreads="32000"  
socket.appReadBufSize="1024"  
socket.appWriteBufSize="1024"  
bufferSize="1024"
...
无效果
综合来看,还是达不到10000并发。下次增加内存再试试。
当前的内存配置是1024M。
另外,在server.xml中的参数acceptCount ,保存的是,当并发请求数超过 maxThreads 时,系统还能存储的请求的队列的长度。默认是100。当队列已经满了的时候,后续的请求将获得一个“connectin refused”的错误。


我的日常 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与我的日常享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和我的日常的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、我的日常管理员和版主有权不事先通知发贴者而删除本文


JAVA爱好者①群:JAVA爱好者① JAVA爱好者②群:JAVA爱好者② JAVA爱好者③ : JAVA爱好者③

快速回复
您需要登录后才可以回帖 登录 | 立即注册

   

关闭

站长推荐上一条 /1 下一条

发布主题 快速回复 返回列表 联系我们 官方QQ群 科帮网手机客户端
快速回复 返回顶部 返回列表