tomcat生产部署关键参数设置-阿里云开发者社区

开发者社区> 开发与运维> 正文

tomcat生产部署关键参数设置

简介: JVM设置 l 一般使用HotSpot JVM。 l 加上-server。 l -Xms/-Xmx:设置java堆初始化和最大值,默认是1/64物理内存和1/4物理内存,一般不超过物理内存的80%,且这两个应该设置成一样,,够用就好,太高会导致浪费内存和GC回收周期长。

JVM设置

一般使用HotSpot JVM

加上-server

-Xms/-Xmx:设置java堆初始化和最大值,默认是1/64物理内存和1/4物理内存,一般不超过物理内存的80%,且这两个应该设置成一样,,够用就好,太高会导致浪费内存和GC回收周期长。

-XX:NewSize/-XX:NewRatio:设置成25%-33%java堆总量,太高太低都会导致无效GC

-XX:PermSize/-XX:MaxPermSize:非堆内内存初始值最大值分别设为128M256M

-XX:+AggressiveOpts:使用最新优化技术。

参考oracle官网http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html,还有其他参数可根据实际配置。

集群设置

四层七层:四层不认识http协议,只按照客户端ipport分配流量,但性能好;七层认识http协议,可用http某些头部分配流量,由于需要计算,性能相对差点。

 

连接池:负载均衡器到tomcat的连接数,一般小于等于tomcat集群节点处理连接能力之和。例如集群有4个节点,每个tomcat预计处理500个链接,那么连接池的长连接数最大设为2000

 

全节点复制(DeltaManager)模式集群节点数3-6为宜。

主备复制(BackupMnagager)模式集群节点可到10台以上。

Connector设置

一共有三种模式:

JAVA BIO,阻塞模式,最原始最稳定,SSL基于JSSE,同时也是tomcat7之前默认模式,它支持较小的并发处理。高并发但是短链接它也为首选。BIO模式下有一个非常重要的参数,maxThreads,表示最大的同时处理请求数,一般范围为200-800,可以从400开始设置,如果是CPU密集型的应用可以减少,如果是非CPU密集型的应用可以增加。

 

JAVA NIO,非阻塞模式,SSL基于JSSE,连接的接收、读写都由专门的线程负责,是tomcat8后默认模式,它支持大并发多链接处理。高并发长连接首选。

 

Native APR,非阻塞模式,它是为了提高性能而使用本地代码的一种模式,它由C++编写,SSL是基于OpenSSL。它支持更大并发更多链接处理。

 

一般只在JAVA BIOJAVA NIO之间切换,他们之间方便切换SSL,因为实现都基于JSSE,并且Native APR有可能在某些机器上不稳定。

 


点击订购作者《Tomcat内核设计剖析》

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章