Tomcat调优的方法

发布时间:2021-06-18 16:14:14 作者:chen
来源:亿速云 阅读:132

本篇内容主要讲解“Tomcat调优的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Tomcat调优的方法”吧!

Tomcat调优参数

主要调优参数

在做Tomcat的调优时,最重要是就是Connector(连接器)的调优了(少数情况下,也可能会配置Executor)

下面贴出一段server.xml中的配置:

123456789101112
<Executor name="tomcatThreadPool"  namePrefix="catalina-exec-"  maxThreads="150"  minSpareThreads="4"/><Connector port="8080"  protocol="HTTP/1.1"  connectionTimeout="20000"  redirectPort="8443"  executor="tomcatThreadPool"/>  一个文件中可以有多个Connector以及多个Executor。

其中:

TIPS

对执行原理感兴趣的童鞋可以参阅下这篇文章,写得相当棒:https://blog.csdn.net/zzzgd_666/article/details/88740198 。由于本文重点在于“调优”,所以就不赘述了。

Connector常用属性

Connector负责接收客户端的请求以及向客户端回送响应的消息。Tomcat 9.0有三类Connector:

但不管哪种Connector,工作过程都是类似的:

常用属性如下:

TIPS

maxConnections、maxThreads、acceptCount之间的关系

我们把Tomcat想象成是一个餐厅,请求就像是去就餐的顾客。这个餐厅非常火爆,当处理不过来的时候,就会排号。

Executor常用属性

定义线程池,从而在多个Connector(主要)及其他组件之间共享。Executor必须实现org.apache.catalina.Executor接口。

常用属性如下:

TIPS

这里只列出了Connector常用属性,,要想阅读完整属性,可使用如下方式:

其他调优参数

Host

Host表示虚拟主机。

server.xml

12
<Host name="localhost" autoDeploy="true"></Host>

这里只列出了Host的调优属性,,要想阅读完整属性,可使用如下方式:

Spring Boot/Spring Cloud项目支持的调优参数

12345678910111213141516171819202122
server:  # 等价于Connector.connectionTimeout  connection-timeout: 60s  tomcat:    # 等价于Connector.acceptCount    accept-count: 100    # 等价于Connector.maxConnections    max-connections: 10000    # 等价于Connector.maxThreads    max-threads: 200    # 等价于Connector.minSpareThreads    min-spare-threads: 10  # TIPS:压缩带来的好处是减少带宽,但缺点在于增加了服务器的CPU开销。就笔者个人的经验,很少直接用Tomcat的GZIP功能,更多使用NGINX的GZIP。  compression:    # 是否开启GZIP,默认关闭    enabled: false    # 执行压缩所需的最小响应大小,默认2KB    min-response-size: 2KB    # 想要GZIP的格式,默认"text/html", "text/xml", "text/plain","text/css", "text/javascript", "application/javascript", "application/json","application/xml"    mime-types: "text/html", "text/xml"

其他调优

Tomcat Session调优

一、JSP与Session

如果使用JSP的话,如果业务允许,考虑考虑加上以下内容:

1
<%@ page session="false" %>

高并发场景下,可能会导致内存溢出。

拓展阅读

一个内存溢出的问题定位过程:https://blog.csdn.net/zhangm3256/article/details/83197756

二、为Session设置合理的超时

超时时间不宜过长,否则也可能会造成内存上的压力。

到此,相信大家对“Tomcat调优的方法”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

推荐阅读:
  1. 一次tomcat压测调优记录
  2. tomcat 性能调优

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

tomcat

上一篇:springboot 中如何实现一个拦截器

下一篇:python清洗文件中数据的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》