jvm调优:
linux系统啊安装的是centos7版本的,64位操作系统,64位软件,安装了6个cpu和128G内存。
jvm最要有三个状态:年轻态,年老态和永久态。其中年轻态和年老态属于堆内存。永久态不属于堆内存,属于jvm虚拟机直接分配的。
年轻态:jvm刚刚分配的java对象。
年老态:年轻态经过垃圾回收处理后,没有处理的java对象 cope到年老态。
永久态:存放class对象,method方法。永久态的大小和项目的规模,类和方法的量有关。一般设置为128m。设置的原则是预留空间的30%。
垃圾回收机制有三种:
串行算法,并行算法,并发算法
吞吐量优先的是并行算法。 响应时间优先的是并发算法
我们设置的是响应时间的并发收集器,将堆大小通过 -xms和-xmx设置为6G。将年轻态通过-xmn4g设置为4g。将年老态设置为并发收集器。 当系统运行10次GC后就对内存进行压缩丶整理。开启年老态的压缩。清理碎片。
tomcat调优:
禁用ajp协议
开启apr通讯模式。tomcat默认使用的是bio模式【阻塞io】。
开启多线程。tomcat默认没有开启多线程。开启多线程可以有效的提高性能。 将maxthreads设置为800.将排队数和maxthreads设置为一样。请求进入tomcat当将maxthreads站满后会进入排队状态。当将排队数也站满后,其他请求就会拒绝。
开启tomcat的jvm参数:比如通过-server开启server模式,通过-xms和-xmx开启初始堆大小和最大堆大小。一般设置为一样。避免堆空间不断增加或者缩小带来的性能消耗。我们在项目中一般设置