Skip to main content

Minecraft: Timingsレポートでサーバー問題を特定しよう

このガイドは、以下の製品を使用して作成されました:

(詳細はプロバイダーごとの製品によって異なる場合がありますが、基本的な概念は同じです)

解説

Timingsレポートって何?

Timingsレポートは、パソコンのタスクマネージャーに似ていて、特にラグが発生している時に問題を見つけるのに役立つツールです。サーバーの全ての動作を記録し、それを視覚的に表示してくれます。

Timingsレポート

Timingsレポートの作成方法

サーバーソフトによってTimingsレポートの作成方法は異なります。基本的には、まず以下のコマンドで記録を開始します(Paper Spigotの場合は設定を変更していなければ不要です)。

/timings start

記録中は普段通りサーバーを使い、問題が発生している状況をしっかり記録しましょう。記録時間は最低10分以上が理想です。

Timingsレポートのエクスポート

Timingsレポートを作成・エクスポートするには、以下のコマンドを使います。

/timings paste

数秒後にエクスポート成功のメッセージが表示されます。リンクをクリックするとTimingsレポートが開けます。

分析

↔️ 値の絞り込み

Timingsレポートをエクスポートして開くと、こんな感じの画面が表示されます。

まずはグラフをよく見て、マウスを各ポイントに合わせて大まかな値をチェックしましょう。

問題のある期間を特定するために、下のスライダーで範囲を絞り込むのがポイントです。グラフのように調整してみてください。

サーバーの値を調査する

合計で3つのカラムがあります。下のスクショのように、1番目のボックスはメインプロセスが1ティック(20ティック=1秒)のうち何%使っているかを示しています。記録中に何回実行されたかもわかります。

2番目のボックスはミリ秒単位のより正確な値ですが、50msを超えないのが理想です。超えると連鎖的に処理が遅れ、サーバーが処理を遅延させるためラグの原因になります。

備考

Full Server Tickは通常無視してOKです。値が赤くなりがちですが、大きな問題ではありません。

色付きでハイライトされた値は特に詳しく調べましょう。

この例では、すでにオレンジ色になっている「全エンティティ(動物、モンスター、アイテムなど)」の処理を見ています。これだけでサーバーにエンティティが多すぎる問題があると推測できます。

サーバーにモブファームがあるか、大量のモブがスポーンしている可能性があります。エンティティが多すぎる問題があれば、設定でスポーン率を下げたり、エンティティ数を制限・自動削除するプラグインを導入すると良いでしょう。

上記のリストは基本的にメインプロセスを表示しています。プロセスをクリックすると、各エンティティタイプの個別処理を詳しく調べられます。2番目と3番目のカラムも忘れずにチェックしてください。

「Minecraft::tickEntity - nms.EntitySkeleton」が多くの処理を実行しているのがわかります。やはりモブファームが原因かもしれません。

もう一つオレンジ色の処理は「待機中のブロック」です。待機中のブロックは非効率で、サーバーは毎ティックごとに状態をチェックしなければなりません。例えば、空中に浮く砂や砂利、溶岩や水などが該当します。

大規模な農場で大量の水を使うと問題が起きやすいです。また、新しいチャンクが生成されて山の中に水源ができると、サーバーは水の流れをスムーズにするために毎回状態を計算し直します。さらにチャンクの生成・読み込みも負荷が高い処理です。

他の調査も同じ手順で行えます。もし評価に困ったら、いつでもサポートに相談してくださいね!

プラグインのチェック

プラグインが原因で問題が起きている場合もあります。原因を特定するには、一時的にプラグインを外してサーバーの状態を再チェックしてみましょう。

プラグインの問題は「Plugins」セクションでも調査可能です。ここも3つのカラムで構成されており、通常のサーバー値と同じ形式です。ただしメインプロセスはなく、プラグイン名が表示されます。クリックすると各処理の詳細を確認できます。