1、堆大小设置:根据每次gc后的活跃对象计算大小,新生代为活跃对象的2倍,老年代也为2到3倍,元数据也为2倍

2、继续根据gc的日志做调整

3、使用一些jvm命令工具做优化,比如jmap

4、jvm参数,比如开启tlab,逃逸分析,双层编译,如果是cms垃圾收集器,那么可开启full gc多少次进行压缩整理,腾出连续空间

5、根据需求选择垃圾回收器,如果需要低延时,确定延时就用gc或cms