本帖最后由 胡闹0519 于 2021-10-16 17:49 编辑
开的是1.12.2宝可梦服 cat端
20G内存 内存占用会不断的增长直至崩溃 无法释放
在线玩家平均数50个左右。机子配置: i9-9900k独立机
bat参数:
@ECHO OFF
:head
title 服务器
java -server -Xincgc -Xmx20480M -Xss512K -XX:+AggressiveOpts -XX:+UseCompressedOops -XX:+UseCMSCompactAtFullCollection -XX:+UseFastAccessorMethods -XX:ParallelGCThreads=4 -XX:+UseConcMarkSweepGC -XX:CMSFullGCsBeforeCompaction=2 -XX:CMSInitiatingOccupancyFraction=70 -XX:-DisableExplicitGC -XX:TargetSurvivorRatio=90 -jar CatServer-d1fba12-universal.jar
echo 服务端已关闭,%b%秒后将会为您启动服务端~
ping -n %b% 127.1>nul
goto head
有尝试过每次重启时候删除data文件 有一点点效果但是效果不是很大,内存占用依旧是无法释放。。求助有无大佬知道有效的解决方法
开的是1.12.2宝可梦服 cat端
20G内存 内存占用会不断的增长直至崩溃 无法释放
在线玩家平均数50个左右。机子配置: i9-9900k独立机
bat参数:
@ECHO OFF
:head
title 服务器
java -server -Xincgc -Xmx20480M -Xss512K -XX:+AggressiveOpts -XX:+UseCompressedOops -XX:+UseCMSCompactAtFullCollection -XX:+UseFastAccessorMethods -XX:ParallelGCThreads=4 -XX:+UseConcMarkSweepGC -XX:CMSFullGCsBeforeCompaction=2 -XX:CMSInitiatingOccupancyFraction=70 -XX:-DisableExplicitGC -XX:TargetSurvivorRatio=90 -jar CatServer-d1fba12-universal.jar
echo 服务端已关闭,%b%秒后将会为您启动服务端~
ping -n %b% 127.1>nul
goto head
有尝试过每次重启时候删除data文件 有一点点效果但是效果不是很大,内存占用依旧是无法释放。。求助有无大佬知道有效的解决方法
bat内容 还有服务器配置上传下看看?
Flowers_花花 发表于 2021-10-16 17:19
bat内容 还有服务器配置上传下看看?
重新编辑了你看看
之前我所在的那个服务器也是这样,无论怎么调整启动参数,或者删改插件&mod,服务器占用的内存都会越来越多,无论分配多少内存最后都会吃满,然后……
然后我们服主换了个硬盘就好了
胡闹0519 发表于 2021-10-16 17:49
重新编辑了你看看
- java -Xms20G -Xmx20G -XX:+UseG1GC -jar 核心名.jar nogui
有时候优化参数不用那么多 反而适得其反 试试这个
Flowers_花花 发表于 2021-10-16 19:40
有时候优化参数不用那么多 反而适得其反 试试这个
测试了 貌似跟启动参数没太大关系
胡闹0519 发表于 2021-10-17 15:48
测试了 貌似跟启动参数没太大关系
那就只能考虑服务端本身和独立机本身的问题了
爆内存两种可能,一个是Java有问题,这个不太可能,还有一个是mod或插件问题.
内存占用高时查一下服务器进程id,cmd里
jmap -histo:live 进程号 | select -First 20
把输出的结果发一下
内存占用高时查一下服务器进程id,cmd里
jmap -histo:live 进程号 | select -First 20
把输出的结果发一下
renyunzhong 发表于 2021-10-17 21:29
爆内存两种可能,一个是Java有问题,这个不太可能,还有一个是mod或插件问题.
内存占用高时查一下服务器进 ...
你好 这个我不太懂 服务器的进程ID是什么意思
胡闹0519 发表于 2021-10-18 13:11
你好 这个我不太懂 服务器的进程ID是什么意思
记录下服务器文件夹里头服务器核心jar包的名字,服务器运行时,cmd命令行输入jps找刚才的名字前面对应的四位或五位数字,就是进程ID,然后cmd里输 jmap -histo:live 进程号 | select -First 20
虽然看起来好像很玄学,但换硬盘也许真的有用https://www.mcbbs.net/thread-1272376-1-1.html
楼主最后解决了吗