open files
修改linux系统open files限制,通过ulimit –a可看到系统默认的一个进程最大打开文件数为1024,linux系统中一切皆为文件,包含socket连接,需将些值调大,才可建立更多的socket连接。
[root@localhost tomcat]# ulimit -a
core file size (blocks, -c)
data seg size (kbytes, -d) unlimited
scheduling priority (-e)
file size (blocks, -f) unlimited
pending signals (-i)
max locked memory (kbytes, -l)
max memory size (kbytes, -m) unlimited
open files (-n)
pipe size ( bytes, -p)
POSIX message queues (bytes, -q)
real-time priority (-r)
stack size (kbytes, -s)
cpu time (seconds, -t) unlimited
max user processes (-u)
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
修改方式如下:
打开如下文件/etc/security/limits.conf
vi /etc/security/limits.conf
在文件中加入如下两行,将此数值,改为65535
* soft nofile
* hard nofile
修改后,重新登录,然后再使用ulimit -a即可看到修改已生效。
修改Tomcat线程池
打开${catalina.base}/conf/server.xml文件,将Connector节点修改如下
<Connector port="8080" protocol="org.apache.coyote.http11.Http11AprProtocol"
connectionTimeout="20000" acceptCount="10000" maxThreads="1000"
redirectPort="8443"/>
禁用Tomcat访问日志
访问量很大时,${catalina.base}/logs/localhost_access_log*会非常大,如果不需要看这些日导,可修改${catalina.base}/conf/server.xml文件,禁用该日志。打开该文件,将如下内容注释即可。
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
设置Tomcat内存
打开文件${catalina.base}/bin/setenv.sh(如果没有则新建),添加下如下内容:
JAVA_OPTS="-Xms4096m -Xmx4096m -XX:PermSize=256m -XX:MaxPermSize=256m"
export JAVA_OPTS
开启Tomcat Apr模式
官方文档中介绍,该模式对IO速度进行了大幅度优化,应将Tomcat调成该模式,下面是链接。
http://tomcat.apache.org/tomcat-7.0-doc/apr.html
如何开启apr模式,可以解压{tomcat}/bin/tomcat-native.tar.gz,然后进入到jni/docs,里面有详细的说明。