我在linux服务器上经常使用jdk 1.8 u121和CPU负载100%崩溃。
VM params
-XX:+UseG1GC
-XX:+UseLargePages
-XX:+AlwaysPreTouch
-XX:+DisableExplicitGC
-XX:G1HeapRegionSize=16777216
-XX:InitialHeapSize=17179869184
-XX:MaxHeapSize=17179869184
-XX:MaxMetaspaceSize=1073741824
-XX:MetaspaceSize=1073741824
-XX:+PrintGC
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+UseCompressedClassPointers
-XX:+UseCompressedOops
GC日志显示,堆和元空间是垃圾收集良好的。完整GC在2天内仅发生6次。
所有 hs_err_pid 文件都说
# Out of Memory Error (allocation.cpp:273), pid=blabla, tid=0x0000blablabla
6个lates崩溃的 hs_err_pid 文件中的最后一条消息
Memory: 4k page, physical 24478968k(135672k free), swap 4193276k(4167448k free)
Memory: 4k page, physical 24478968k(622028k free), swap 4193276k(4168912k free)
Memory: 4k page, physical 24478968k(562104k free), swap 4193276k(4180084k free)
Memory: 4k page, physical 24478968k(365528k free), swap 4193276k(4180096k free)
Memory: 4k page, physical 24478968k(526376k free), swap 4193276k(4180108k free)
Memory: 4k page, physical 24478968k(133264k free), swap 4193276k(4179064k free)
可能导致此次崩溃的原因是什么? jvm怎么了?可能它取决于低自由物理内存?