Centos7 tomcat优化

优化Tomcat7启动慢

vim /data/jdk8/jre/lib/security/java.security

securerandom.source=file:/dev/random
替换成
securerandom.source=file:/dev/./urandom

jvm 内存优化

vim /data/tomcat8/bin/catalina.sh
添加在 cygwin=false 的上一行

JAVA_OPTS=" -server -Xms4096M -Xmx4096M -XX:MaxNewSize=1024m -XX:MaxPermSize=1024m -XX:PermSize=512M -Xmn1024M -XX:+UseParallelGC -XX:+UseBiasedLocking -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"

-server #让jvm在服务模式下运行,可以提高jvm运行效率
-Xmx #最大内存,如果是32操作系统,2G内存以上,设置为1280G是最优的,设置太大了会造成jvm崩溃,这是32位jvm本身的限制造成的。
-Xmn #最小内存,官方推荐为最大内存的3/8,这里取下整,就521M了
-Xms #初始化内存,直接与最大内存一致,这样可以避免内存重复分配,降低效率,直接上来就是最大的,jvm也不用再扩展内存了,节省时间。
-XX:PermSize #非堆区初始化内存分配大小
-XX:MaxPermSize #非堆区分配内存的最大上限
-XX:MaxNewSize #新生代可被分配的内存的最大上限
-XX:+UseParallelGC #优化垃圾回收。
-XX:+UseBiasedLocking #优化锁机制。
-Djava.awt.headless=true #Headless模式是系统的一种配置模式。在该模式下,系统缺少了显示设备、键盘或鼠标。
-Dfile.encoding=UTF-8 #用来改变jdk处理文件等的默认字符编码
-Dsun.jnu.encoding=UTF-8 #调整操作系统编码

tomcat配置优化

vim /data/tomcat8/conf/server.xml

<Connector executor="tomcatThreadPool"
               port="8890" protocol="org.apache.coyote.http11.Http11AprProtocol"
               enableLookups="false"
               maxHttpHeaderSize ="102400"
			   URIEncoding="UTF-8"
			   useBodyEncodingForURI="true"
			   maxThreads="1000"
			   acceptCount="1000"
			   connectionTimeout="10000"
			   minSpareThreads="100"
			   maxSpareThreads="300"
			   maxKeepAliveRequests="500"
			   maxProcessors="1000"
               minProcessors="5"
			   maxIdleTime="4000"
	redirectPort="7443" />		   

enableLookups #关闭tomcat的dns查询,节省带宽
maxHttpHeaderSize #请求和响应的http头的最大大小,以字节为单位指定,默认8192(8k)
URIEncoding #URL编码字符集
useBodyEncodingForURI #请求参数的编码方式要采用请求体的编码方式
maxThreads #最大线程数
acceptCount #等待的线程数量
connectionTimeout #接受一个连接后等待的时间,单位毫秒
minSpareThreads #最小备用线程数,可以理解为,服务器一旦启动,马上创建这么多线程以备使用,因此设置太大了浪费资源,太小了会降低效率
maxSpareThreads #最大备用线程数,创建的线程数量超过这个数量时,如果某些线程空闲,那么这些会被回收,直到线程总数量小于这个值
maxKeepAliveRequests #需要保持的最大请求数,即处于keepAlive状态的请求的个数,建议此值为maxThreads * 0.5。
maxProcessors #最大连接线程数,即:并发处理的最大请求数
minProcessors #最小空闲连接线程数,用于提高系统处理性能
maxIdleTime #当前线程大于初始化线程,那空闲线程存活的时间,单位毫秒

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值