1 tomcat性能影响实验
1.1配置环境说明:
tomcat7
一个jsp网站
测试网站吞吐量(1个指标、停顿时间,内存的使用情况,包括回收的效率...)
1.2 工具:
apache jmeter
1.3 实现原理:
通过jmeter对tomcat增加压力,不同的虚拟机参数应该会有不同的表现。
1.4 目的:
观察不同配置参数对吞吐量的影响
2 列举如下7种测试场景
2.1 测试串行回收器
(使用-XX:+UseSerialGC 参数可以指定使用新生代串行收集器和老年代串行收集器)
-XX:+PrintGCDetails -Xmx32m -Xms32m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseSerialGC
-Xloggc:d:/gc.log -XX:PermSize=32m测试结果显示的吞吐量:908|90
2.2 扩大堆内存以提升系统性能
-XX:+PrintGCDetails -Xmx512m -Xms32m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseSerialGC
-Xloggc:d:/gc.log -XX:PermSize=32m测试结果显示的吞吐量:3362|335
2.3 调整初始堆大小
-XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
-XX:+UseSerialGC -Xloggc:d:/gc.log -XX:PermSize=32m测试结果显示的吞吐量:4132|412
2.4 测试ParNew回收器的表现
(使用-XX:+UseParNewGC 参数设置,表示新生代使用并行收集器,老年代使用串行收集器)
-XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
-XX:+UseParNewGC -Xloggc:d:/gc.log -XX:PermSize=32m测试结果显示的吞吐量:4271|426
2.5 使用ParallelOldGC回收器
(使用-XX:+UseParallelGC 参数设置,表示新生代和老年代均使用并行回收收集器)
-XX:+UseParallelGC:新生代使用并行回收收集器,老年代使用串行收集器。
-XX:+UseParallelOldGC:新生代和老年代都是用并行回收收集器。
-XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
-XX:+UseParallelGC -XX:+UseParallelOldGC -XX:ParallelGCThreads=8 -Xloggc:d:/gc.log
-XX:PermSize=32m测试结果显示的吞吐量:4997|498
2.6 测试CMS回收器的性能
(设置参数-XX:+UseConcMarkSweepGC 可以要求新生代使用并行收集器,老年代使用 CMS)
-XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
-XX:+UseConcMarkSweepGC -XX:ConcGCThreads=8 -Xloggc:d:/gc.log
-XX:PermSize=32m测试结果显示的吞吐量:4223|421
2.7 测试G1回收器的性能
-XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
-XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:ParallelGCThreads=8 -Xloggc:d:/gc.log
-XX:PermSize=32m -XX:MaxGCPauseMillis=200 -XX:MaxGCPauseMills=20测试结果显示的吞吐量:3298|329
2.8 -XX:HeapDumpOnOutOfMemoryError
另一个与之相关联的参数:
-XX:HeapDumpPath=/temp/
该参数的含义是指定dump的文件目录
3.其它说明
3.1 JVM的新特性(jdk1.8)
使用Metaspace(JEP 122)代替持久代(PermGen space)。在JVM参数方面,使用-XX:MetaSpaceSize和-XX:MaxMetaspaceSize代替原来的-XX:PermSize和-XX:MaxPermSize
3.2 一张简单说明JVM垃圾回收
clipboard.png
作者:简简算算
链接:https://www.jianshu.com/p/272732e6b057