博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Tomcat 性能优化
阅读量:7126 次
发布时间:2019-06-28

本文共 1323 字,大约阅读时间需要 4 分钟。

hot3.png

Tomcat性能优化:

  1. 修改线程池
    默认线程池配置:
    <Executor name="tomcatThreadPool"
            namePrefix="catalina-exec-"
            maxThreads="150”
            minSpareThreads=“4”
            maxIdleTime=“60000"/>
    修改线程池:
    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
            maxThreads=“150”
            maxSpareThreads=“75”
            minSpareThreads=“25”
            maxIdleTime=“60000”
            acceptCount=“1000"/>
    maxThread 表示最大能同时处理的连接数
    minSpareThreads 表示最少开这么多线程等待处理
    minSpareThreads 表示最多有这么多空闲线程
    acceptCount 表示当达到最大线程数的时候还可以排队的数目
    具体的参数需要结合机器,可以通过测试得到最优配置。
     
  2. 设置为NIO
    默认协议为BIO(Linux Tomcat8之前):
    <Connector executor="tomcatThreadPool"
                 port="8080" protocol="HTTP/1.1"
                 connectionTimeout="20000"
                 enableLookups=“false"
                 redirectPort="8443" />
    修改为NIO
    <Connector executor="tomcatThreadPool"
                 port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
                 connectionTimeout="20000"
                 enableLookups=“false"
                 redirectPort="8443" />
     
  3. JVM内存调优
    在catalina.sh中添加:
    JAVA_OPTS = “-Xmx1024m -Xms1024m -Xmn400m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC -Xloggc:/usr/local/tomcat/logs/gc.log”
    cygwin=false
    -Xmx1024 设置堆大小最大为1024m,具体根据机器内存大小调节
    -Xms1024 设置对大小最小为1024m
    -XX:+UseParNewGC 年轻代使用并行GC
    -XX:+UseConcMarkSweepGC 年老代使用并发GC
    可以根据内存大小和访问量进行修改,具体值设置要参考gc log。
    JVM可参考这篇文章:

转载于:https://my.oschina.net/u/2950586/blog/779378

你可能感兴趣的文章
ThinkPHP分页和删除操作
查看>>
CCIE职业发展系列典型案列分析之RIPv1协议配置的解决方案
查看>>
【高德地图API】如何制作自己的旅游地图?
查看>>
windbg 通过网络联机调试配置
查看>>
iOS 瘦身之道
查看>>
nodejs的配置
查看>>
centos7下集群部署zookeeper(伪集群)
查看>>
mysql主从复制
查看>>
IT168:2014年APT***发展趋势及防御策略调研
查看>>
用好ul和li
查看>>
基于JQUERY的AJAX跨域问题完美解决方案
查看>>
搭建LVS+Keepalived高可用负载均衡集群
查看>>
局域网PING不通原因是什么?解决ping不通局域网电脑
查看>>
泄露们事件
查看>>
springmvc提交带日期的表单400
查看>>
我的友情链接
查看>>
使用Python socket获取本机ip
查看>>
java 简单的加解密操作
查看>>
qmake 之 CONFIG 与 QT 乱谈
查看>>
ExtJS 创建动态加载树
查看>>