作者houboyjacky (Jacky Hou)
看板Minecraft
标题[讨论] 伺服器LAG解决 Cauldron(MCPC)
时间Fri Feb 27 12:15:37 2015
各位大大您好
小弟首次发文
想与你们讨论Server延迟问题
本身是使用FreeBSD建置Server
平常业务也只有学生用FTP上传作业、网站浏览
大部分业务就是Minecraft Server
Server I7-870 8G 使用1.5G Ramdisk(速度保证 :D ) 学术网路(100M)
启动参数参考其他网友的网站後即时Java背景处理参数
再加入自己的以前使用的参数与设备所限制参数的大小
-server -Xms4g -Xmx4g -XX:MaxDirectMemorySize=400m -XX:NewSize=3g
-XX:MaxNewSize=3g -XX:+UseParNewGC -XX:MaxTenuringThreshold=2
-XX:SurvivorRatio=8 -XX:+UnlockDiagnosticVMOptions
-XX:ParGCCardsPerStrideChunk=32678
-XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled
-XX:+ParallelRefProcEnabled -XX:+CMSClassUnloadingEnabled
-XX:CMSInitiatingOccupancyFraction=80 -XX:+UseCMSInitiatingOccupancyOnly
-XX:+AlwaysPreTouch -XX:+PrintGCDetails -XX:+PrintGCTimeStamps
-XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution
-XX:+PrintGCApplicationStoppedTime -XX:-OmitStackTraceInFastThrow
-Djava.net.preferIPv4Stack=true
我采用的是最後一版的cauldron-1.7.10-1.1240.06.213-server
模组装了近五十个(Minecraft Client显示的)
bukkit装了AuthMe、Essentials、Installer、
mcMMO、McCombatLevel、Vault、Clearlag、EnchantView、PluginManager
以上是我的软硬体设备
我不知道有没有其他版友也是24小时全开Server
目前这个伺服器调整到现在
已经有三天多没有关机
Minecraft也没重开
上线人数大概在7人左右
未来人数也会增加
基本上FreeBSD不重开也很稳
除非有重大更新或软体升级
不然不会重开机
想请问一下
在两三人在地底挖矿的时候 其他人在陆地上
整个Server会呈现回朔、延迟较严重的状况
平常偶尔是会看到其他人或怪物走路突然瞬移
长期开启伺服器有什麽需要注意或我所缺漏的
还是参数可以进一步优化稳定Server
除了换开服软体 XD
请版友提供意见
感恩您:D
--
[Personal Computer]
CPU :Intel I7 4790K 4.5G 1.25v MotherBoard :ASUS Z87-EXPERT
VGA :Poseidon-GTX780-P-3GD5 Water Block :EK-Supremacy-Full Nickel
Radiator:Alphacool NexXxoS ST30 Cooling System:LARKOOLER (SkyWater 330)
RAM :Kingston HyperX 1600 8G x 4 CD-ROM :LITE-OM iHAS324
HDD :M4 128G+M500 240G+WD 500G(10K)+WD 1TB(7.2K)+Hitachi 2TB(7.2K)
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.163.245.253
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Minecraft/M.1425010544.A.FB8.html
1F:推 mi000731: 记忆体32g你参数max给4g当然会lag 02/27 12:24
2F:推 mi000731: -XX:MaxTenuringThreshold=2这个也很奇怪。 02/27 12:52
3F:推 nick5487: 楼上他开server的电脑是8G 不过会不会LAG跟给的记忆体 02/27 13:01
4F:→ houboyjacky: MaxTenuringThreshold=2是老年期给他两代的就好了 02/27 13:14
5F:→ houboyjacky: 还是需要调大一点? 02/27 13:14
6F:推 mi000731: 所以下面那个8*4是什麽状况。效能要改了测到顺才适合自 02/27 13:32
7F:→ mi000731: 之前这数值我都开上万 02/27 13:32
8F:推 nick5487: 下面是签名档 Personal Computer 个人电脑 02/27 13:33
9F:→ nick5487: 原PO的server设备在上面 I7 870+8G 还要扣掉1.5 ramdisk 02/27 13:33
10F:推 mi000731: 你先打指令/gc之类查记忆体使用量吧。会lag表示电脑ㄧ直 02/27 13:34
11F:→ mi000731: 花时间在整理东西。 02/27 13:34
这是我的这时候的状况
http://ppt.cc/9zIc
直接打/lagg gc
也会定期清理系统内的地上掉落物
是怪物太多吗??
http://ppt.cc/H6Mm
刚刚@_@...动物模组蛮多
TPS有时候会掉到13...
平常倒是还好保持最高的20
※ 编辑: houboyjacky (1.163.245.253), 02/27/2015 16:23:28
12F:→ nick5487: 掉落物不是本来就会自动消失吗 我记得装那个好像反而会 02/27 17:04
13F:→ nick5487: LAG 02/27 17:04
那是ClearLag,我觉得他只有通知移除的功能XD
NoLagg和需求的Lib无法加装,会造成Server当掉
可能跟开服软体也有关系
现在我是用另外一套LolnetNoLagg
类似限制生物成长也会移除生物的插件
类似的效果
不知道会不会比较好一些
※ 编辑: houboyjacky (1.163.245.253), 02/27/2015 17:46:55
14F:→ mmis1000: mcpc不需要限制植物生长的套件,他有内建的吧? 02/27 18:33
15F:→ mmis1000: 毕竟那是spigot就有的功能,而mcpc源自spigot跟forge 02/27 18:34
喔喔 好的 我尝试看看 会不会好一点
※ 编辑: houboyjacky (1.163.245.253), 02/27/2015 19:17:13
16F:→ cowbaying: 你为什麽不去看看CPU使用率? 看了你就知道问题了 02/27 21:07
17F:→ cowbaying: 这是麦块万年无解的问题 02/27 21:08
18F:→ cowbaying: 参数设定一堆没有比较好 因为参数影响微乎其微 02/27 21:08
使用率平时三四人所有处理程序总和大概在2X%
十一人所有处理程序总合大概在80%左右
还是只能重开一途吗 ? XD
※ 编辑: houboyjacky (1.163.245.253), 02/27/2015 21:43:06
19F:推 janice001: 参数多的确没甚麽用 银行跑的Java server 也顶多下个 02/28 00:12
20F:推 janice001: -server 而已 02/28 00:12
21F:→ mmis1000: 还是有差拉,除了minecraft以外,很少哪个Java程式记忆 02/28 00:54
22F:→ mmis1000: 体吃这麽狠的,gc频率又超高,不过最重要的还是硬体 02/28 00:55
23F:推 cowbaying: 不要只看总使用率 看看个别处理器的使用率 02/28 09:48
24F:→ cowbaying: 这问题很复杂 因为地底容易乱生怪 02/28 09:49
25F:→ cowbaying: 还有不管你电脑再好 只要一颗处理器核心满载就是LAG 02/28 09:50
26F:→ cowbaying: 因为目前TICK的运算就是只吃一条thread 02/28 09:51
27F:→ cowbaying: 目前我还在用mpi改写tick 但是最根本的方式就是 02/28 09:51
28F:→ cowbaying: 官方自己写进去 不然很累阿 02/28 09:51
29F:推 mi000731: 楼上那啥? 02/28 11:08
个别使用的CPU处理大多是0%(大概是GC在等) 只有一个执行序是才是主要的Server运作...
我调到现在觉得Server在怎麽调整都是GC平行化 没办法把Server平行下去
小弟孤陋寡闻 MPI 这是头一次听到
※ 编辑: houboyjacky (1.163.245.253), 02/28/2015 11:23:23
30F:推 cowbaying: MPI(Message Passing Interface) 正港的平行运算 02/28 11:35
31F:推 mi000731: 好酷分享ㄧ下伺服我带人过去啊 02/28 11:46
32F:推 mi000731: 看了ㄧ下楼上大大的文章深感专业。学海无涯。所以早点脱 02/28 11:51
33F:→ mi000731: 离开服坑果然是对的== 02/28 11:51
哈哈 因为那个伺服器专门给Dcard朋友+学校的学弟妹而开的
如果你有Dcard可以搜寻一下
小弟伺服器也查了不少资料
但是功力尚浅
没有这麽专业 感谢大大提供
我很纳闷没有Minecraft平行化运算
不过知道那个很麻烦...
※ 编辑: houboyjacky (1.163.245.253), 02/28/2015 16:22:28
34F:推 cowbaying: 我之前有写过用显卡辅助运算的SPIGOT 不会回溯 02/28 15:53
35F:→ cowbaying: 但是LAG时反应会慢一点 02/28 15:53
36F:→ cowbaying: 不过显卡记忆体没2GB很容易出现错误 02/28 15:54
37F:→ cowbaying: 原理是把TICK里面一些物件跟资料的运算利用OPENCL转移 02/28 15:55
38F:→ cowbaying: 到显卡上 但是效能增加不明显 约只有20% 02/28 15:55
39F:→ cowbaying: 我用旧有的显卡去作测试的(AMD 6770) 02/28 15:56
40F:→ cowbaying: 这个晶片跟我测试的平台还没有异构运算的模式 02/28 15:57
41F:→ cowbaying: 如果MPI还是不行 可能会转回用显卡辅助运算 02/28 15:58
大大太强大了Q_Q
望尘莫及
42F:推 mi000731: Cow大是什麽伺服器 02/28 17:09
43F:→ cowbaying: 目前关着...先弄个死斗给大家玩玩... 02/28 19:54
44F:推 yingruxd: 实体太高,MOD的实体非常吃运算 02/28 22:28
45F:→ yingruxd: 先找出造成实体暴高的MOD,再想办法限制或移除 02/28 22:28
46F:→ yingruxd: 还有就是,机械相关MOD运作的速度有些可以调速 02/28 22:32
47F:→ yingruxd: 比如说BC本来每个TICK都会检查 你可以改成每4TICK检查 02/28 22:33
48F:→ yingruxd: 都能够大幅度改善 02/28 22:33
49F:→ yingruxd: 还有就是玩家的可视CHUNK距离最好不要用预设 02/28 22:34
50F:→ yingruxd: 本来MOD服资源就吃紧了 弄6~8即可 02/28 22:35
51F:→ yingruxd: 最後 如果有CHUNK LOADER相关的MOD 最好限制功能 02/28 22:37
52F:→ yingruxd: 如果有玩家很没节操的丢一堆 资源根本就浪费掉 02/28 22:38
53F:→ yingruxd: 如果要保持大量怪物暴走 又想提升流畅度 02/28 22:41
54F:→ yingruxd: 把怪物回收速度提高也是可行的解决方案 02/28 22:41
感谢y大帮忙,我再尝试把mod参数改一改
可视Chunk距离减少会有帮助XD 预设还是10
※ 编辑: houboyjacky (1.163.242.93), 03/01/2015 11:19:49
55F:→ rusa: 问一下fastcraft有没有装? 03/02 03:49
因为是Cauldron,不能同时使用fastcraft,这个方法我试过了
56F:推 janice001: 我是觉得目前最简单方法是每天早上六点重开 03/03 09:22
推
miau9202: 推荐改成5点重开,这样断线就能推给中华电信了 03/04 23:33
57F:推 yingruxd: 重开只能保持暂时的顺畅,真的玩家的发展度高了 03/12 19:35
58F:→ yingruxd: 一些东西可以节省资源的没去弄,怎麽开都顿 03/12 19:35
59F:→ yingruxd: 例如号称最大工业服的某伺服器就是这样 03/12 19:36
60F:→ yingruxd: 把钱都花在设备上,然後说有IT人在做伺服器维护管理 03/12 19:37
61F:→ yingruxd: 结果游戏本身的设定却弄得很有问题 03/12 19:37
感谢各位的回答,我尝试限缩范围
後来改用SSD之後
变得不会再有延迟的状况发生
记忆体方面也有所提升
顺畅度更高
感谢各位大大
※ 编辑: houboyjacky (59.120.9.142), 04/26/2015 15:21:23