CentOS环境下Tomcat调优可从以下方面入手:
catalina.sh
设置-Xms
(初始堆)和-Xmx
(最大堆),建议为服务器物理内存的60%-80%,如-Xms1024m -Xmx2048m
。-XX:+UseG1GC
,优化大内存场景下的垃圾回收效率。-XX:NewRatio
(新生代与老年代比例)、-XX:ParallelGCThreads
(并行GC线程数)等。server.xml
:通过<Executor>
定义线程池,设置maxThreads
(最大线程数,建议500-1000)、minSpareThreads
(最小空闲线程数,建议50-100),避免频繁创建线程。<Connector>
的protocol
设为org.apache.coyote.http11.Http11NioProtocol
,提升并发处理能力。/etc/security/limits.conf
,设置* soft nofile 65536
和* hard nofile 65536
,提高并发连接数。/etc/sysctl.conf
中添加net.core.somaxconn=65535
、net.ipv4.tcp_tw_reuse=1
等,提升TCP连接效率。/etc/rc.local
,添加echo never /sys/kernel/mm/transparent_hugepage/enabled
,减少内存碎片。server.xml
的<Connector>
中添加compression="on"
,减少网络传输数据量。注意:每次调整后需重启Tomcat并观察性能变化,避免过度优化影响稳定性。
参考来源:[1,2,3,4,5,6,7,8,9,10,11]