单机高并发下的jvm调优,首先,那么就是要有足够大的内存,使得 不至于大量对象瞬间将内存撑爆,那么即使这样也会有问题,例如:
我的eden区域以及survivor区域由于分配了很大的内存,例如分配了30G,那么当发生青GC(minor gc)的时候,会使得这个垃圾回收的时间过长,从而影响高并发下的请求响应,那么到底该如何调优呢?
G1 垃圾收集器思想:
可预测停顿时间机制 他会根据当前产生的对象量的大小预估他发生minor gc时候的大概回收时间, 当到达时间阈值,就会触发minor gc 工作,开始垃圾回收,而不是等到整个区域满了 到达30g再做垃圾回收,相当于到达一个垃圾回收的时间阈值而部分回收垃圾的一种思想;
# 暂停时间,默认值200ms。当到达这个阈值,就会产生一次青gc
-XX:MaxGCPauseMillis
# 使用G1垃圾收集器
-XX:+UseG1GC
就学到这么几个参数,后续继续吧~~~