SSDにしたらマイクラサーバーのラグがましになった話

2020-04-04_17.17.43

※2020年(マイクラ1.14〜1.15のころ)の話です。文中の Intel Optane 900p は生産終了していて、今は手に入りにくくなっています。

題名のとおりです。

従来は15人ログインでTPSが12前後、25人以上ログインで1桁でしたが、マイクラサーバーのデータをすべてSSDに移すと20で安定、低くても17前後で落ち着きました。

1.14以降からエンティティの処理がかなり重くなり、TPSの低下は免れないと思われていましたが、SSDに換装するとボトルネックが解消され、大幅な低下はなくなりました。

ちなみにプラグインは現時点で72個です。

転送速度がボトルネックになる

ラグ発生時、CPU使用率や空きメモリに特に問題はないようでした。そこで転送速度に目をつけるわけですが、マイクラ鯖が大きなデータをやり取りするのは基本チャンク情報でしょう。

HDDだと、定期的に行われるチャンクセーブの際にラグが発生してしまいますが、私のサーバーでは描画距離をかなり長く設定してあるため、読み込み時にも大きな負荷がかかっていたと考えられます。

また、DynmapやCoreProtectなども頻繁に多くのデータを書き込むと思われます。

このようにHDDが追いつかなくなり、他の処理も停滞するといったような状況になっていました。

SSDにした理由

RAMディスクでいいなどの記事もありますが、そこそこの大規模サーバーになると容量的にそんな事もやっていられないです。

実際、SSDに変える前は妥協策として一部ワールドデータをRAMディスクに移していましたが、再起動時にHDDへバックアップを取るにしても時間がかかりすぎますし、突然のトラブルで保護に失敗する可能性もあります。

ちなみに私が運営しているMOFUCRAFT!!!では建築ワールド1つで10GB弱、サーバー全体で80GBほどになります。

また、HDDでも問題ないという記事や、サーバーでSSDを使うべきではないという意見もよく見かけます。むしろそればっかりしか見つかりませんが、マイクラサーバーの場合SSDに換装するしか手はありません。

サーバー向けのSSD

とはいえ、寿命の心配などももちろんあるので高寿命のSSDを選びましょう。今回当サーバーで用いたのは「Intel Optane 900p」という、寿命が無限にありそうなSSDです。

昔、一般のパソコンで使うような安いSSDを使ったときは50日ほどで壊れてしまいました。なので、Optaneのような特殊なSSDかサーバー向けの高耐久なSSDを選びましょう。

SSD換装前に試したこと

  • サーバーファイルの調整(bukkit.yml spigot.yml paper.ymlなど)
  • CPUオーバークロック
  • プラグインの削減
  • エンティティ関連の最適化プラグイン導入
  • チャンク関連の最適化プラグイン導入

ブログのトップへ