第4周作业:看看你们的线上系统是怎么设置的JVM垃圾回收参数?设置的合理吗?
第4周作业:
看看你们的线上系统是怎么设置的JVM垃圾回收参数?设置的合理吗?
本周作业就是让大家可以直接去看看自己生产系统的JVM参数了,看看你的新生代、老年代、Eden和Survivor的大小,然后去估算一下你的系统运行模型,每秒占用多少内存,多长时间触发一次Minor GC。
一般Minor GC后有多少存活对象,Survivor能放的下吗?会不会频繁因为Survivor放不下导致对象进入老年代?会不会因动态年龄判断规则进入老年代?
根据案例的思路看看,你的各个内存区域应该给多大的大小,保证新生代gc后的存活对象尽量都留在Survivor里。
另外,对你的系统运行模型做出预估,看一般多久会塞满老年代触发Full GC?触发Full GC的时候是否需要优化CMS相关的各种参数?
结合案例学到的知识,自己动手画图,把你们系统的运行模型和内存分配,gc触发,全流程和模型都画出来,一定要自己去分析、自己思考、自己画图,这样才真正把知识给吸收了。