作者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/m.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