81,092
社区成员
发帖
与我相关
我的任务
分享
Heap Configuration:
MinHeapFreeRatio = 0
MaxHeapFreeRatio = 100
Heap Usage:
PS Young Generation
Eden Space:
capacity = 3287285760 (3135.0MB)
used = 53116712 (50.656044006347656MB)
free = 3234169048 (3084.3439559936523MB)
1.6158227753220944% used
MinHeapFreeRatio 参数用来设置堆空间最小空闲比例,默认值是 40。当堆空间的空闲内存小于这个数值时,JVM 便会扩展堆空间。
MaxHeapFreeRatio 参数用来设置堆空间最大空闲比例,默认值是 70。当堆空间的空闲内存大于这个数值时,便会压缩堆空间,得到一个较小的堆。
可以看到项目中最小空闲比例为0,最大空闲比例为100,这表示堆只会增长,不会缩减。
项目中有时候访问量非常大,这时候不断的增加 Eden堆 的大小,但是当该应用访问量降下来后,此时 Eden使用率是很低的。
上面可以看到Eden 总大小为3.1G,但是只使用了50M,Eden 使用率为1.6。由于使用稳定堆的原因,虽然Eden使用率很低,但JVM并不会释放空闲内存,导致项目就算在访问量不大的时候,还是占用非常多的内存。
此贴终结。