我用这样的JAVA_OPTS启动了jvm:
JAVA_OPTS="-server -Xms1500m -Xmx1500m -Xmn455m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=1024m"
一段时间后,当我查看GC日志时:
[Full GC (Ergonomics) [PSYoungGen: 352K->0K(460288K)] [ParOldGen: 1069272K->352585K(1070080K)] 1069624K->352585K(1530368K), [Metaspace: 333651K->333631K(1808384K)], 0.5450331 secs] [Times: user=1.46 sys=0.00, real=0.54 secs]
我很困惑。我已经设置了MaxMetaspaceSize = 1024m,但根据日志,实际上有1808384K(约1.7G),为什么?
答案 0 :(得分:0)
MaxMetaspaceSize
限制已提交元空间内存的数量,而GC日志则会打印保留虚拟内存的数量。保留的地址空间不一定占用任何物理内存或交换空间。