Jmeter
内存不足了,修个5个线程吧
测试结果:
Jmeter配置参数
5个线程,每个线程1秒跑1000次
测试串行吞吐量
-XX:+PrintGCDetails -Xmx128M -Xms128M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseSerialGC -XX:PermSize=32M |
GC回收4次 吞吐量1386 |
扩大堆的内存
-XX:+PrintGCDetails -Xmx512M -Xms128M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseSerialGC -XX:PermSize=32M |
GC回收4次 吞吐量1448 |
结论 最大内存越大,吞吐量越高。 |
调整初始堆
-XX:+PrintGCDetails -Xmx512M -Xms512M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseSerialGC -XX:PermSize=32M |
GC回收1次 吞吐量1623 |
并行回收(UseParNewGC)
--XX:+PrintGCDetails -Xmx512M -Xms512M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:PermSize=32M |
GC回1次 吞吐量1832 |
并行合并回收(UseParallelGC)
-XX:+PrintGCDetails -Xmx512M -Xms256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:ParallelGCThreads=8 -XX:PermSize=32M |
GC回1次 吞吐量2035 |
总结:
1.初始堆内存和最大堆内存越大,吞吐量越大
2,并行回收比串行回收吞吐量大,多核,多线程,吞吐量多
3.垃圾回收次数越少,说明性能越好。