#yyds干货盘点#tomcat配置优化

Posted 好记性不如烂笔头

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点#tomcat配置优化相关的知识,希望对你有一定的参考价值。

一、禁用管理端

为防止其他人访问TOMCAT管理端,造成安全隐患,需删除

删除/tomcat/webapps/host-manager和manager.

将webapps/ROOT/index.jsp中的 带manager的内容删除(三个超链接)

二、更改端口配置

#更改tomcat暗号也可更改端口
<Server port="8011" shutdown="shutdown">

#tomcat web端口,如若需要可更改
<Connector port="8080"  protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

#ajp工作模式一般与apache配合,默认被注释,需要时可更改端口
<Connector protocol="AJP/1.3"
           address="::1"
           port="8009"
           redirectPort="8443" />
    -->

三、JVM内存优化

Linux下TOMCAT_HOME/bin/catalina.sh中加入
JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=512m -Xms1024m -Xmx2048m -Duser.timezone=Asia/Shanghai"
#参数解释:
-server:启用JDK版本的server
版本,-client模式下特点是启动速度比较快,但运行时性能和内存管理效率不高,通常用于客户端应用程序或开发调试,在32位环境下直接允许java程序默认启用该模式。Server模式的特点是启动速度比较慢,但运行时性能和内存管理效率高,适用于
-xms512m:java虚拟机初始化时堆的最小内存,一般与xmx配置为相同值;
-xmx512m:java虚拟机可使用堆的最大内存;
-XX:PermSize=256M:java虚拟机永久代大小;
-XX:MaxPermSize=512m:Java虚拟机永久代大小最大值;
-Duser.timezone=Asia/Shanghai:设置用户所在时区。

四、最大连接数优化

使用apr进行优化

#下载对应安装包,安装依赖关系gcc-c++
apr-1.5.2.tar_2
apr-util-1.5.2.tar
解压后进入目录./configure
make
make install
apr-1.5.2.tar_2默认安装到/usr/local/apr

[root@localhost data]# cd apr-util-1.5.2/
[root@localhost apr-util-1.5.2]# ./configure --with-apr=/usr/local/apr
[root@localhost apr-util-1.5.2]# make
[root@localhost apr-util-1.5.2]# make install

#安装tomcat-native安装包在tomcat/bin下
[root@localhost bin]# cp tomcat-native.tar.gz /usr/local/src/
[root@localhost src]# tar zxvf tomcat-native.tar.gz 
#进入到文件得native中
[root@localhost tomcat-native-1.2.23-src]# cd native/
#输入对应得安装目录,刚给得apr得安装目录还有JDK得安装目录
[root@localhost native]# ./configure --with-apr=/usr/local/apr --with-java-home=/data/jdk
[root@localhost native]# make
[root@localhost native]# make install

#安装成功后查看/usr/local/apr/lib 会生成对应文件
#添加环境变量
vim /etc/profile
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
重新加载
#编辑server.xml文件修改
 <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
       maxIdleTime="60000" />
maxIdleTime:释放超过60秒空闲的线程

#重启tomcat查看Catalina.out日志文件,若有以下配置即是成功了

07-May-2021 23:44:32.619 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library [1.2.23] using APR version [1.5.2].
07-May-2021 23:44:32.619 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
07-May-2021 23:44:32.619 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL配置:useAprConnector[false],useOpenSSL[true]

五、Tomcat线程优化

    <Connector port="8080" protocol="HTTP/1.1"
               maxThreads="600" minSpareThreads="100"
                maxSpareThreads="500"
                acceptCount="800"
                connectionTimeout="50000"
               redirectPort="8443" />

maxThreads="600" ///最大线程数
minSpareThreads="100" ///初始化时创建的线程数
maxSpareThreads="500" ///一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。
acceptCount="800"//指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理

connnectionTimeout: 网络连接超时,单位:毫秒,设置为 0 表示永不超时

六、增加缓存空间

#tomcat日志报警缓存空间不足,增加以下内容
大小默认为1024,单位是KB
vim /tomcat/conf/context.xml
<Resources cachingAllowed="true" cacheMaxSize="100000" />

以上是关于#yyds干货盘点#tomcat配置优化的主要内容,如果未能解决你的问题,请参考以下文章

#yyds干货盘点#CentOS下Jenkins 配置

Tomcat详解#yyds干货盘点#

部署Tomcat负载均衡 #yyds干货盘点#

#yyds干货盘点#MySQL索引优化系列:索引失效

Tomcat的部署安装(论坛)#yyds干货盘点#

supervisor管理集群(多个tomcat)#yyds干货盘点#