Tomcat在CentOS上怎样优化性能
小樊
55
2025-09-13 19:47:13
一、操作系统层面优化
- 调整文件描述符限制:编辑
/etc/security/limits.conf,添加 * soft nofile 65536 和 * hard nofile 65536,提升并发连接数上限。
- 优化内核参数:修改
/etc/sysctl.conf,设置 net.core.somaxconn=65535、net.ipv4.tcp_tw_reuse=1、net.ipv4.tcp_tw_recycle=1,增强网络性能。
- 禁用透明大页:在
/etc/rc.local 中添加 echo never /sys/kernel/mm/transparent_hugepage/enabled,避免内存碎片。
二、Tomcat配置优化
- 线程池调优:在
conf/server.xml 中配置 Executor,设置 maxThreads(最大线程数,建议200-500)、minSpareThreads(最小空闲线程数,建议50-100)。
- 启用NIO连接器:使用
org.apache.coyote.http11.Http11NioProtocol 协议,提升I/O性能。
- 压缩响应数据:添加
compression="on" 参数,启用Gzip压缩。
- 配置连接超时与队列:设置
connectionTimeout(建议30000ms)和 acceptCount(建议100-200),避免连接堆积。
三、JVM参数优化
- 调整堆内存:设置
-Xms(初始堆)和 -Xmx(最大堆)为物理内存的80%,例如 -Xms2g -Xmx2g,避免频繁GC。
- 选择垃圾回收器:推荐使用G1回收器,添加
-XX:+UseG1GC,优化大内存场景下的垃圾回收效率。
四、其他优化
- 关闭不必要的服务:如Tomcat管理界面、自动部署功能,减少资源占用。
- 隐藏版本信息:修改
conf/server.xml 中的 Server 标签,避免暴露敏感信息。
- 定期更新与监控:更新Tomcat版本,使用监控工具(如Prometheus)跟踪性能指标。