tomcat高并发优化

公司的运行websocket 的tomcat 需要支持1000+长连接,需要对此进行优化。经过半天得实验,优化点主要有三处。
1、设置JVM堆内存。
方法:vim catalina.sh,在文件头添加 JAVA_OPTS=’-Xms2048m -Xmx2048m’

2、设置tomcat为NIO方式,并增大线程数(默认BIO,线程数过多,无法支撑1000+个并发)。
方法:修改 Server.xml,在Connector后面添加
protocol=”org.apache.coyote.http11.Http11NioProtocol” maxThreads=”500” acceptCount=”1100”

3、修改linux最大文件句柄数
方法:修改linux系统参数。vim /etc/security/limits.conf,添加
* soft nofile 65536
* hard nofile 65536

结果:1000个并发后,Websocket服务正常。线程数300-400左右,消耗内存300-400M左右。

你可能感兴趣的:(web开发)