Tomcat优化
# 1.配置Tomcat后台管理系统
tomcat8:
tomcat7:
# 2.动静分离
静态资源如果让 Tomcat 处理的话 Tomcat 的性能会被损耗很多, 所以我们一般都是采用:Nginx+Tomcat 实现动静分离,让Tomcat只负责Java文件的解析工作,Nginx实现静态资源的访问。
# 3.Tomcat线程池调优
- name:给执行器(线程池)起一个名字;
- namePrefix:指定线程池中的每一个线程的 name 前缀;
- maxThreads:线程池中最大的线程数量,假设请求的数量超过了 750,这将不是意味着将 maxThreads 属性值设置为 750,它的最好解决方案是使用「Tomcat集群」。也就是说,如果有 1000 请求,两个 Tomcat 实例设置 maxThreads = 500,而不在单 Tomcat 实例的情况下设置 maxThreads=1000。
- minSpareThreads:线程池中允许空闲的线程数量(多余的线程都杀死);
- maxIdLeTime:一个线程空闲多久算是一个空闲线程;
管理界面
# 4.修改Tomcat的运行模式
- BIO
Tomcat8 以下版本,默认使用的就是 BIO「阻塞式IO)」模式。 对于每一个请求都要创建一个线程来进行处理,不适合高并发。
- NIO
Tomcat8 以上版本,默认使用的就是NIO模式「非阻塞式 IO」。
# 5.禁用 AJP连接器
AJP的全称 Apache JServer Protocol,使用 Nginx+Tomcat的架构,所以用不着 AJP 协议,所以把AJP连接器禁用。
# 6.JVM调优
Tomcat 是运行在 JVM 上的,所以对 JVM 的调优也是非常有必要的。
在catalina.sh中配置JVM参数,这里不做过多阐述
最后更新时间: 2024/03/15, 17:35:22