问题

服务gc频繁,故需要通过jmap查看jvm内存使用情况,写了一个定时1s执行jmap的工具,结果gc更加频繁,gc原因是Heap Inspection Initiated GC,该问题是由jmap -histo:live导致的

解决方案

由于在执行时添加了live参数,所以在执行该命令前均会执行一次full gc ;故应避免使用jmap -histo:live因为会频繁的full gc,故在执行jmap时,去掉live