[Minecraft備忘録]タイムアウトしてサーバーに入れない。
こんにちは!てるだよ!
サーバーに入れない!
朝起きて、マイクラサーバーに入ろうとしたらこのような表示が出た・・
同じPCで起動しているから、回線という点はないよなぁ。
サーバーログで確認をしようと思ったけど、なにやらメモリの使い方が変。
通常だったら、もっと左上のグラフはギザギザしているはずなんだけど、
っていうかおーい!w
サーバーに入れてないのにPlayersのリストに名前がっ!!
さらに、相変わらずcan't keep up!の表示が・・・
一度再起動をして起動をしてみると。
綺麗なメモリのグラフが見えてきた!
これは入れるか・・・?
うああ・・・
この記事の冒頭に戻ったじゃん・・・
メモリについて
これガページコレクションされなくなってる以前にメモリ使われなくなってる・・・?
とか思いながら、グラフを眺めてたんだけど
まって・・・これ手震えるんだけど・・・
という状況になった。
なんとメモリ割り当てられてない・・・・!!
初期の4GBしか割り当てられていなかった・・・
1.19.2のforgeってJVMの書き方が変わって、
こんな感じで書けるんだけど、-Xmx16Gの前に#つけてた・・
#つけておくとコメントアウトされて実行されないんだね。
でも結局サーバーに入ろうとしたら、こうなっちゃった。
サーバーに入れてないのに、リストに名前出てるし。
うーむ・・・
GCのオプションを追加してみる
マイクラってG1GCだよなぁとか思いながら、他のGCについて調べてみた。
GCっていうのは、ガページコレクションのことで
ある程度メモリを使ったら、使ったメモリを開放しちゃうよーってやつ。
マイクラでよく使われてるGCは、G1GCって方式で、他の人は、ShenandoahGCってやつも使ってるみたい。
詳しくはここを見てやった。
で、なんか聞くところによるとZGCってのが早いみたい?
ZGCってなに
https://blogs.oracle.com/otnjp/post/understanding-the-jdks-new-superfast-garbage-collectors-ja
よくわかんないけど、すごいらしい!
ZGCを使ってみた
なんか限界までメモリ使われてる・・・
このまま入ってみたらどうなるんだろう・・・
だめだった。
なんかGCよりそもそも、サーバー内になんか問題がありそう・・?
入れてないけどGCはされてる・・・
つまり、GCに問題はなさそう・・・
原因発覚
まさかと思って、一応念のため、
kill @e[type=item]
を実行
サーバーに入れるようになった・・・
前日世界樹を作成中に落ちたため、葉っぱがアイテム化していたみたい。
110万くらいのアイテムが消えた代わりに入れた!
でも、ロールバック(数秒単位で画面が戻る)をする・・・
次回は、ロールバック解決に取り組んでみる。