文章目录

[隐藏]

  • 一、内存优化
  • 二、配置优化
  • 三、优化网卡驱动
一、内存优化

1、修改tomcat路径bin目录下的catalina.sh

cat >> catalina.sh << END  JAVA_OPTS='-Xms20480m -Xmx20480m -Xss256k -XX:PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=256m'  END  

参数:

-Xms  jvm初始化堆内存大小  -Xmx  jvm堆的最大内存   #堆内存建议设为服务器内存的60%~80%  -Xss  线程栈大小       #一般设置为256k    -XX:PermSize     jvm非堆区初始内存分配大小  -XX:MaxPermSize  jvm非堆区最大内存 #非堆内存不可回收,看项目大小而定  

2、重启tomcat验证:jmap -heap 12345(tomcat PID)

二、配置优化

修改server.xml添加参数

maxThreads        客户请求最大线程数  minSpareThreads   初始化时创建的 socket 线程数  maxSpareThreads   连接器的最大空闲 socket 线程数  enableLookups     若设为true, 则支持域名解析,可把 ip 地址解析为主机名  redirectPort      在需要基于安全通道的场合,把客户请求转发到基于SSL 的 redirectPort 端口  acceptAccount     监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads)  connectionTimeout 连接超时  minProcessors     服务器创建时的最小处理线程数  maxProcessors     服务器同时最大处理线程数  URIEncoding URL   统一编码  

生产中配置:

<Connector executor="tomcatThreadPool"             port="8080"             protocol="HTTP/1.1"             connectionTimeout="20000"             minSpareThreads="150"             maxSpareThreads="500"             enableLookups="false"             disableUploadTimeout="true"             acceptCount="1000"             maxThreads="1000"             maxProcessors="1000"             minProcessors="5"             useURIValidationHack="false"             compression="on"             compressionMinSize="2048"             compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"             uriencoding="utf-8"             redirectPort="8443" />  
三、优化网卡驱动
$ cat >> /etc/sysctl.cnf << END  net.core.netdev_max_backlog = 32768  net.core.somaxconn = 32768  net.core.wmem_default = 8388608  net.core.rmem_default = 8388608  net.core.rmem_max = 16777216  net.core.wmem_max = 16777216  net.ipv4.ip_local_port_range = 1024 65000  net.ipv4.route.gc_timeout = 100  net.ipv4.tcp_fin_timeout = 30  net.ipv4.tcp_keepalive_time = 1200  net.ipv4.tcp_timestamps = 0  net.ipv4.tcp_synack_retries = 2  net.ipv4.tcp_syn_retries = 2  net.ipv4.tcp_tw_recycle = 1  net.ipv4.tcp_tw_reuse = 1  net.ipv4.tcp_mem = 94500000 915000000 927000000  net.ipv4.tcp_max_orphans = 3276800  net.ipv4.tcp_max_syn_backlog = 65536    END    $ sysctl -p  

原文出处:csdn -> https://blog.csdn.net/m0_37886429/article/details/79826309

本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如果侵犯你的利益,请发送邮箱到 [email protected],我们会很快的为您处理。