每当堆内存达到90%但垃圾收集当时没有运行时,我们就会收到来自Websphere Application Server 7.0.25的警报。我们监视内存并发现GC仅在99%的堆内存使用后运行。 JVM参数设置为:
初始堆内存 - 128MB
最大堆内存 - 512MB
无论如何,请建议GC在达到90%或更低的堆内存利用率后启动。
答案 0 :(得分:1)
从http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html我发现此选项-XX:InitiatingHeapOccupancyPercent=n
描述:
启动并发GC循环的(整个)堆占用百分比。它由GC使用,它基于整个堆的占用而不仅仅是一代(例如,G1)占用并发GC循环。值0表示“执行恒定GC循环”。默认值为45。
试一试。