tomcat优化

Tomcat中的线程池(APR和ThreadPool)

2. 在Connector中指定使用共享线程池:

<Connector executor="tomcatThreadPool"
           port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" 
           minProcessors="5"
           maxProcessors="75"
           acceptCount="1000"/>

executor="tomcatThreadPool"
minProcessors="5"
maxProcessors="75"
enableLookups="false"
acceptCount="1000"

重要参数说明:
executor:表示使用该参数值对应的线程池;

minProcessors:服务器启动时创建的处理请求的线程数;

maxProcessors:最大可以创建的处理请求的线程数;

acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。

BTW:我测试了一下,由于每次请求不再需要重新分配线程,系统响应速度还是有很明显的改善的。

1. Tomcat优化其实就是对server.xml优化(开户线程池,调整http connector参数)

搜索【<Executor name="tomcatThreadPool"】,开启并调整为 
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" 
        maxThreads="1000" maxIdleTime="60000" 
        minSpareThreads="20"/> 
搜索【port="8080"】,调整为 
<Connector executor=" tomcatThreadPool" port="8080" //开启线程池 
    protocol="org.apache.coyote.http11. Http11AprProtocol//开启Apr协议,需要安装Apr支持 
     maxHttpHeaderSize="8192" maxThreads="1000" processorCache="1000" acceptCount="1000" 
    minSpareThreads="100" 
    acceptorThreadCount="8" URIEncoding="UTF-8" 
     enableLookups="false" redirectPort="8443" //关闭反向查询 
     connectionTimeout="120000" keepAliveTimeout="120000" 
     maxKeepAliveRequests="65535" disableUploadTimeout="true" 
     compression="on" compressionMinSize="4096" //开启静态文件压缩 
     noCompressionUserAgents="gozilla, traviata" //开启静态文件压缩 
     compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json,application/x-javascript " //开启静态文件压缩 
/>

2. 对catalina.sh优化JVM

打开 Tomcat路径\bin\ catalina.sh,在最顶部加入,红色部分请根据实际情况调整 
JAVA_OPTS="-server -showversion -Xms12g -Xmx12g -XX:PermSize=256m -XX:MaxPermSize=256m" 
JAVA_OPTS="$JAVA_OPTS -d64 -XX:CICompilerCount=8 -XX:+UseCompressedOops" 
JAVA_OPTS="$JAVA_OPTS -XX:SurvivorRatio=4 -XX:TargetSurvivorRatio=90" 
JAVA_OPTS="$JAVA_OPTS -XX:ReservedCodeCacheSize=256m -XX:-UseAdaptiveSizePolicy" 
JAVA_OPTS="$JAVA_OPTS -Duser.timezone=Asia/Shanghai -XX:-DontCompileHugeMethods" 
JAVA_OPTS="$JAVA_OPTS -Xss256k -XX:+AggressiveOpts -XX:+UseBiasedLocking" 
JAVA_OPTS="$JAVA_OPTS -XX:MaxTenuringThreshold=31 -XX:+CMSParallelRemarkEnabled " 
JAVA_OPTS="$JAVA_OPTS -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=256m -XX:+UseFastAccessorMethods" 
JAVA_OPTS="$JAVA_OPTS -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true" 
JAVA_OPTS="$JAVA_OPTS -XX:+UseGCOverheadLimit -XX:AllocatePrefetchDistance=256 -XX:AllocatePrefetchStyle=1" 
JAVA_OPTS="$JAVA_OPTS -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:MaxGCPauseMillis=200" 
【注意】 
1.-Xms=-Xmx=服务器内存*70%,如部署tomcat,jboss在同一台服务

时间: 2024-10-04 09:21:46

tomcat优化的相关文章

Tomcat优化步骤【转】

一.Tomcat的缺省是多少,怎么修改 Tomcat的缺省端口号是8080.修改Tomcat端口号:1.找到Tomcat目录下的conf文件夹2.进入conf文件夹里面找到server.xml文件3.打开server.xml文件4.在server.xml文件里面找到下列信息maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″enableLookups=”false” redirectPort=”8443″ acceptCount=”

Java应用容器介绍以及tomcat优化实战

     java开发语言在软件开发里面是比较火的,特别涉及到一些大型架构,一般都会使用java来开发软件,所以java容器使用和选型不一样.     1. Tomcat是Apache鼎力支持的Java Web应用服务器,由于它优秀的稳定性以及丰富的文档资料,广泛的使用人群,从而在开源领域受到最广泛的青睐.     2. Jboss作为Java EE应用服务器,它不但是Servlet容器,而且是EJB容器,从而受到企业级开发人员的欢迎,从而弥补了Tomcat只是一个Servlet容器的缺憾.  

tomcat 优化配置 &nbsp; by. java 8.0.25 &nbsp; &nbsp; &nbsp; tomcat 7.0.59

tomcat 优化配置 , 说明 一.并发优化 1.JVM调优 以下为1G物理内存tomcat配置: JAVA_OPTS="-server -Xms512M -Xmx512M -Xss256K" -server:                一定要作为第一个参数,在多个CPU时性能佳 -Xms:                  初始Heap大小,使用的最小内存,cpu性能高时此值应设的大一些 -Xmx:                  java heap最大值,使用的最大内存 X

Tomcat学习总结(3)——Tomcat优化详细教程

Tomcat是我们经常使用的 servlet容器之一,甚至很多线上产品都使用 Tomcat充当服务器.而且优化后的Tomcat性能提升显著,本文从以下几方面进行分析优化. 一.内存优化 默认情况下Tomcat的相关内存配置较低,这对于一些大型项目显然是不够用的,这些项目运行就已经耗费了大部分内存空间,何况大规模访问的情况.即使是本文中的这个只有一个页面的超小项目,在并发达到一定程度后也会抛出以下类似异常: Java代码   严重: Exception invoking periodic oper

Tomcat优化之容易集合经验

Tomcat优化1. 如何加大tomcat连接数在tomcat配置文件server.xml中的<Connector ... />配置中,和连接数相关的参数有: maxThreads : tomcat起动的最大线程数,即同时处理的任务个数,默认值为200. minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10 . maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75 . acceptCount: 当tomcat起动的线程数达到最大时,接

tomcat优化-有改protocol 和 缓存 集群方案

tomcat优化 在线上环境中我们是采用了tomcat作为Web服务器,它的处理性能直接关系到用户体验,在平时的工作和学习中,归纳出以下七种调优经验. 1. 服务器资源 服务器所能提供CPU.内存.硬盘的性能对处理能力有决定性影响.    (1) 对于高并发情况下会有大量的运算,那么CPU的速度会直接影响到处理速度.    (2) 内存在大量数据处理的情况下,将会有较大的内存容量需求,可以用-Xmx -Xms -XX:MaxPermSize等参数对内存不同功能块进行划分.我们之前就遇到过内存分配

Tomcat优化方案

Tomcat是我们经常使用的 servlet容器之一,甚至很多线上产品都使用 Tomcat充当服务器.而且优化后的Tomcat性能提升显著,本文从以下几方面进行分析优化. 一.内存优化 默认情况下Tomcat的相关内存配置较低,这对于一些大型项目显然是不够用的,这些项目运行就已经耗费了大部分内存空间,何况大规模访问的情况.即使是本文中的这个只有一个页面的超小项目,在并发达到一定程度后也会抛出以下类似异常: Java代码   严重: Exception invoking periodic oper

tomcat优化实例

优化实例 启动参数优化JAVA_OPTS='-server -Xms512m -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=512m -XX:+UseBiasedLocking -XX:+AggressiveOpts -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+

tomcat优化相关

一:Tomcat内存优化,启动时告诉JVM我要一块大内存(调优内存是最直接的方式) Windows 下的catalina.bat Linux 下的catalina.sh 如: JAVA_OPTS='-Xms256m -Xmx512m' -Xms<size> JVM初始化堆的大小 -Xmx<size> JVM堆的最大值 实际参数大小根据服务器配置或者项目具体设置. 二:Tomcat 线程优化 在server.xml中 如: <Connector port="80&qu