• 欢迎加入MineBBS QQ讨论群:点击查看所有的官方讨论群
  • 我们将于近期对服务器进行迁移,服务可能中断至多2日。请各位安排好自己的访问计划,造成不便敬请谅解!
  • MineBBS入站考试已经上线!想要成为【正式会员】解锁更多功能吗?快来参与吧!【点我去看】

问题 服务器因内存而崩溃

mc506lw

【Lv:4】

VIP
开发者
正式会员
注册
2023/09/24
消息
596
金粒
9,555.19金粒
版本:1.21.4
核心:Leaf-1.21.4-503
Java:Zulu21.42+19-CA (21.0.7+6) (build 21.0.7+6-LTS)
崩溃情况:
没有进行任何操作,开服一会后就会自己崩溃,直接停止运行,没有进入正常的退出程序
控制台随后输出:
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f8d3b9af4d2, pid=207376, tid=207434
#
# JRE version: OpenJDK Runtime Environment Zulu21.42+19-CA (21.0.7+6) (build 21.0.7+6-LTS)
# Java VM: OpenJDK 64-Bit Server VM Zulu21.42+19-CA (21.0.7+6-LTS, mixed mode, sharing, tiered, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x7af4d2] void OopOopIterateDispatch<G1CMOopClosure>::Table::oop_oop_iterate<ObjArrayKlass, oopDesc*>(G1CMOopClosure*, oopDesc*, Klass*)+0xe2
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /root/【隐私处理】/hs_err_pid207376.log
#
# If you would like to submit a bug report, please visit:
# http://www.azul.com/support/

启动脚本尝试:
java -Xmx32G -jar leaf-1.21.4-503.jar <---可以运行很长时间才会崩溃(大概能正常运行1小时)
java -Xmx64G -jar leaf-1.21.4-503.jar <---可以运行很长时间才会崩溃(大概能正常运行3小时)
java -Xms64G -Xmx64G -XX:+UseZGC -XX:+UnlockExperimentalVMOptions -XX:ConcGCThreads=8 -XX:ParallelGCThreads=32 -XX:ZAllocationSpikeTolerance=5 -XX:ZCollectionInterval=120 -XX:SoftMaxHeapSize=58G -XX:+UseNUMA -XX:+UseTransparentHugePages -XX:ReservedCodeCacheSize=512m -XX:InitialCodeCacheSize=512m -XX:-ZProactive -XX:+ZUncommit -XX:ZUncommitDelay=300 -Dfile.encoding=UTF-8 -Dgale.log.warning.root=false -Dgale.log.warning.offline.mode=false --add-modules=jdk.incubator.vector -Xlog:gc*,safepoint,age*=info:file=gc.log:time,level,tags:filesize=100M -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=oom.hprof -jar leaf-1.21.4-503.jar
↑---运行几分钟就崩溃
java -Xms64G -Xmx64G -jar leaf-1.21.4-503.jar <---运行几分钟就崩溃

hs_err_pid207376 是 java -Xmx64G -jar leaf-1.21.4-503的报错日志,服务器核心的log中无任何有关报错内容
 

附件

去掉所有jvm参数,如果仍旧出现就可以定性为硬件问题,联系你的服务商换内存条
 
目前情况:我们已完成内存稳定性测试,通过率良好,在8G内存配置下运行良好。然而,在将内存容量提升至12G时,观察到系统出现不稳定现象。最终目标是确保在64G内存环境下也能稳定运行。

当前进展:评论区提供的建议目前尚未能完全解决这一特定容量下的稳定性问题。我正在积极尝试探索其他潜在解决方案,以找到稳定支持64G运行的有效途径。
 
仅供参考paper的原文,However, more memory does not mean better performance above a certain point. Eventually you will hit a point of diminishing returns. Going out and getting 32GB of RAM for a server will only waste your money with minimal returns.
然而,超过一定程度后,更多的内存并不意味着更好的性能。最终你会达到收益递减的临界点。为一台服务器配备32GB内存只会浪费你的钱,收益却微乎其微。
出处;https://docs.papermc.io/paper/aikars-flags/
个人看法:或许大内存搭建VC群组服数据库同步更好

f you’re running on a modern JVM, i.e. 17, 21 or higher, try with no flags first. Modern JVMs are very good at handling various applications with default GC settings.如果你在现代JVM(即17、21或更高版本)上运行,首先尝试不使用任何标志。现代JVM在使用默认垃圾回收(GC)设置处理各种应用程序方面表现非常出色。
出处;https://docs.papermc.io/misc/tools/start-script-gen/

查看日志崩溃发生在垃圾回收过程中,触发线程:G1 Conc#3,崩溃位置在JVM 的libjvm.so库,
SIGSEGV可能由内存硬件故障导致(如内存条损坏、接触不良),导致 JVM 访问内存时出错,使用软件检查内存条的完整性

更换/升级JAVA补丁,更换使用如Amazon Corretto或者微软的JDK试试看,暂不要使用任何标志。
 
最后编辑:
仅供参考paper的原文,However, more memory does not mean better performance above a certain point. Eventually you will hit a point of diminishing returns. Going out and getting 32GB of RAM for a server will only waste your money with minimal returns.
然而,超过一定程度后,更多的内存并不意味着更好的性能。最终你会达到收益递减的临界点。为一台服务器配备32GB内存只会浪费你的钱,收益却微乎其微。
出处;https://docs.papermc.io/paper/aikars-flags/
个人看法:或许大内存搭建VC群组服数据库同步更好

f you’re running on a modern JVM, i.e. 17, 21 or higher, try with no flags first. Modern JVMs are very good at handling various applications with default GC settings.如果你在现代JVM(即17、21或更高版本)上运行,首先尝试不使用任何标志。现代JVM在使用默认垃圾回收(GC)设置处理各种应用程序方面表现非常出色。
出处;https://docs.papermc.io/misc/tools/start-script-gen/

查看日志崩溃发生在垃圾回收过程中,触发线程:G1 Conc#3,崩溃位置在JVM 的libjvm.so库,
SIGSEGV可能由内存硬件故障导致(如内存条损坏、接触不良),导致 JVM 访问内存时出错,使用软件检查内存条的完整性

更换/升级JAVA补丁,更换使用如Amazon Corretto或者微软的JDK试试看,暂不要使用任何标志。
就是哪怕是12G都也会崩,然后内存检测也完全检测过了,通过性测试什么的都跑过了,根本不知道该怎么办了。。。
 
就是哪怕是12G都也会崩,然后内存检测也完全检测过了,通过性测试什么的都跑过了,根本不知道该怎么办了。。。
玩其它大型游戏也会蹦吗?更换java,更新插件版本,有的插件旧版本存在问题,[先备份后更新]
或者再不济重装系统了,paper有推荐过Amazon Corretto的JDK。
 
就是哪怕是12G都也会崩,然后内存检测也完全检测过了,通过性测试什么的都跑过了,根本不知道该怎么办了。。。
如果是直接崩溃,日志,崩溃报告没有一个内存有关或者异常,那么可能是内存或者库问题,也可能是平台问题
 
今天刷到个视频看看能不能对你有所帮助,错误报告蛮像的,这里面讲解了解决方法
【MC笑传之常常崩!神秘崩溃牵扯出了计算机底层原理】
叠个甲,我还不是很了解Java:吓:
 
打赏用户
在出现这样的日志时,说明这是一个底层错误,首先用测试工具看看内存条有没有问题,然后清空所有mod和plugin尝试运行,如果没有错误说明不是内存本身问题或JVM访问问题(有可能,很小),然后通过检查模组/插件是否用了JNI,感觉不像越界
 
无法解决,换了机器就一点事没有了,估计是硬件问题
我独立机还不好换,之前48x2的内存是没事,后来换了48x4就这样了,明天再换一波内存条试试了,和你的情况一样离奇,内存测试就没问题,干其他的也没啥事,就开服崩()
 
正解:加一个一旦某些区域实体过多就清除的插件和服务器自动重启的软件awa
 

在线管理成员

在线会员

  • 哀川
  • Hsk Hry
  • 邪神龙哥
  • iris
  • 小叶
  • Qi_Gai
  • 气态一氧化二氢
  • dadaaaaadsss
  • kksz66
  • I IKUN2004
  • 孙笑川1145233
  • AIERMIN
  • Wan_Guan
  • Despker
  • TinyAii
  • Calum
  • TYW
  • _juhua_
  • ya_xzer21145
  • pvp_hanpi
...和 1 更多。
后退
顶部 底部