もっと記事を見る
Minecraft

うまくいく Minecraft サーバー最適化ガイド

通常、ラグはプレイヤーが不満を言う前に現れます。チャンクのロードが遅くなり、Mob が一瞬フリーズし、レッドストーンの動作がおかしくなり、サーバーはオンラインに留まるごとに 1 時間ごとに重くなり始めます。良いマインクラフト…

うまくいく Minecraft サーバー最適化ガイド

通常、ラグはプレイヤーが不満を言う前に現れます。チャンクのロードが遅くなり、Mob が一瞬フリーズし、レッドストーンの動作がおかしくなり、サーバーはオンラインに留まるごとに 1 時間ごとに重くなり始めます。優れた Minecraft サーバー最適化ガイドは、悪いハードウェアから魔法のパフォーマンスを絞り出すことではありません。無駄を取り除き、TPS を保護し、サーバーの実際の使用状況に基づいて賢明なトレードオフを行うことが重要です。

友達のために小さなサバイバル ワールドを運営している場合、ボトルネックは、数十人のプレイヤー、農場、プラグイン、そして広大な探索マップを備えたパブリック サーバーとは異なって見えます。だからこそ、最適化は 1 つのルール、つまり最初に測定し、次に調整から始める必要があるのです。特に遅延の原因を理解せずにプラグイン、プリジェネ、エンティティ制限、Java フラグをスタックした場合、ランダムな変更により状況が悪化する可能性があります。

設定メニューではなく、ボトルネックから始めます

Minecraft のパフォーマンスは主に、CPU 速度、メモリの動作、ワールド アクティビティの 3 つによって決まります。 RAM は最も簡単に確認できる数値であるため、RAM が主な問題であると思われることがよくあります。実際には、遅延サーバーの多くは CPU に依存しています。メインスレッドがワールドティックに追いつけない場合、RAM を追加するだけでは低い TPS は修正されません。

だからこそ、最初の質問は簡単なのです。ティックラグ、メモリ負荷、ディスク遅延、またはネットワークの問題に対処していますか?ティック ラグは通常、エンティティ、ホッパー、レッドストーン、ワールド生成、またはコーディングが不十分なプラグインによって発生します。メモリ負荷は、サーバーのヘッドルームが不足したときの途切れ、長いガベージ コレクションの一時停止、またはクラッシュとして現れることがあります。ディスクの問題は、チャンクの保存と読み取りによりすべての速度が低下する、弱いストレージまたは過負荷のシステムでより一般的です。

ほとんどのコミュニティ サーバーにとって、最大の成果は、不必要なワールド アクティビティを減らすことによってもたらされます。何千もの動物、積み重ねられたホッパーライン、巨大な暴徒農場は、装飾的なプラグインよりも早くパフォーマンスに悪影響を及ぼします。

まず適切なサーバー ソフトウェアを選択してください

この決定はその後のすべての調整オプションに影響するため、Minecraft サーバー最適化ガイドはソフトウェアの選択から始める必要があります。バニラは純粋に単純にするのに適していますが、制御が制限されます。 Spigot はパフォーマンスを向上させます。Paper は管理を難しくすることなく強力な最適化オプションを提供するため、通常、ほとんどのサーバーにとってより良い選択肢です。

プラグインと安定したパフォーマンスが必要な場合、多くの管理者にとって Paper がデフォルトの出発点になります。強力な MOD サポートが必要な場合は、話が変わります。 Forge サーバーまたは Fabric サーバーは良好なパフォーマンスを発揮しますが、最適化は modpack に大きく依存します。一部の MOD は軽量です。プレイヤーがマップの半分を自動化した瞬間にティックパフォーマンスを破壊する人もいます。

トレードオフは簡単です。通常、柔軟性が高まると、パフォーマンスのリスクも高まります。稼働時間が重要で、予期せぬ事態を減らしたい場合は、スタックを無駄のない状態に保ちます。

ハードウェアは重要ですが、人々の考え方は重要ではありません

サーバーがダウンしたり、ピーク時にプレイできなくなったりすると、安価なホスティングは高価になります。 Minecraft の場合、見た目は大きくても負荷がかかるとパフォーマンスが低下するという見出しのスペックよりも、高速な CPU コアと SSD ストレージの方が重要です。リソースのバランスが取れているサーバーは、RAM が増大しシングルコアのパフォーマンスが低いサーバーよりも優れていると感じられます。

小規模サーバーの場合は、通常、強力な CPU パフォーマンスを備えた適度な RAM で十分です。大規模なコミュニティの場合、マシンを停止させることなく、プラグイン、プレーヤーのアクティビティ、およびバックアップのためのスペースが必要です。これは、インフラストラクチャの品質が重要となる場所でもあります。DDoS 保護、低遅延、安定した稼働時間、高速ストレージは、プレーヤーのエクスペリエンスに直接影響します。

友人のためにホスティングしている場合、クリーンなセットアップであれば 8 GB で十分です。複数のワールド、プラグイン、またはビジーな MOD インスタンスを実行している場合は、サーバーが毎晩リソースを求めて戦う前に、上のレベルに移動してください。たとえば、ACLClouds は、まさにこの問題を中心にゲーム ホスティングを位置づけています。つまり、迅速な導入、SSD によるパフォーマンス、すべてを再構築することなく無料のセットアップからより大きなプランに移行するための十分なスケーリング ルームです。

ワールドとチャンクのための Minecraft サーバー最適化ガイド

サーバーラグの多くは、ワールド生成を通じて自ら引き起こします。プレイヤーが未踏の地形に全力疾走するとき、サーバーはリアルタイムでチャンクを生成する必要があります。これはコストが高くつきますし、複数のプレイヤーが異なる方向に進むと事態はさらに悪化します。

ワールドの事前生成は、最もクリーンなアップグレードの 1 つです。これにより、チャンクの生成がゲームプレイのピーク時間から制御されたバックグラウンド処理に移行します。その結果、サーバーがビジー状態のときの途切れが減り、TPS がより安定し、ディスクの負荷が軽減されます。

表示距離とシミュレーション距離にも現実的な値が必要です。世界がより良く見えるため、管理者はこの値を高く設定するのが好きです。コストは重いです。表示距離を短くすると、チャンクの負荷とメモリ使用量がすぐに削減され、シミュレーション距離が短くなると、プレーヤー周辺のアクティブな処理が減ります。プライベートサーバーでは、さらに多くのことができる可能性があります。パブリックサーバーでは、積極的な設定がスムーズなゲームプレイと継続的な速度低下の違いとなることがよくあります。

枠線のサイズも重要です。マップが事実上無限である場合、プレイヤーは永遠に新しい世代を強制し続けることになります。世界の境界線により、拡張を制御できるようになり、ストレージ、バックアップ、パフォーマンスの管理が容易になります。

明確な目標を持ってエンティティ、ファーム、レッドストーンを調整する

エンティティは、パフォーマンスを最も早く低下させる方法の 1 つです。 Mob、村人、ドロップアイテム、トロッコ、動物はすべてコストを追加します。問題は 1 つの農場ではありません。問題は、すべてのプレイヤーがそれを構築した場合に何が起こるかです。

ここで、最適化は単なる構成ファイルではなく、ポリシーの決定となります。サーバーがカジュアルサバイバルの場合、エクスペリエンスをあまり損なうことなく、暴徒の数を制限したり、アイテムのデスポーン時間をトリミングしたり、繁殖の上限を設定したりできます。サーバーが技術的な Minecraft を中心に構築されている場合、厳しいエンティティ制限により、維持したいプレイヤーがイライラする可能性があります。

レッドストーンも同様です。大型の装置、ホッパー時計、アイテムソーターにより、サーバーは継続的に作業を行います。 Paper では、そのオーバーヘッドの一部を削減するための設定が提供されますが、不適切に設計された自動化を無料で修正することはできません。正しい答えが教育である場合もあります。ラグの原因をプレーヤーに示し、公平なビルド ガイドラインを設定します。

プラグインはパフォーマンスを向上させることもあれば、静かにパフォーマンスを破壊することもあります

プラグインスタックが間違っていると、正常なマシンが台無しになる可能性があります。すべてのプラグインは、ロジック、イベント リスナー、スケジュールされたタスク、および競合の可能性を追加します。何ヶ月もプラグイン リストを確認していない場合は、ティックごとにパフォーマンス コストを支払いながら、誰も使用していない機能を実行している可能性が高くなります。

プラグインを最新の状態に保ち、冗長なものをすべて削除し、同じ問題を解決する複数のプラグインをスタックしないようにします。重い権限のプラグイン、いくつかのチャット ツール、重複する経済システム、およびメンテナンスが不十分な管理ユーティリティにより、目に見えない多くのオーバーヘッドが発生する可能性があります。

ここではプロファイリングが重要です。プラグインがラグのスパイクを引き起こしている場合は、推測しないでください。タイミングまたはプロファイラーの出力をチェックし、何がティック時間を消費しているのかを確認します。優れた最適化は、良い意味で退屈なものです。つまり、可動部品が減り、予期せぬ事態が減り、メンテナンスがよりクリーンになります。

メモリチューニングとJavaフラグ

RAM の割り当ては過剰ではなく、十分である必要があります。メモリが少なすぎると、クラッシュや継続的なガベージ コレクションが発生します。ヒープの調整が不十分な場合、多すぎるとクリーンアップの一時停止が長くなる可能性があります。多くのサーバーでは、値を常に変更するよりも、賢明な固定割り当ての方が効果的です。

最新の Java バージョンは大幅に改良されているため、古いアドバイスが常に良いアドバイスであるとは限りません。古いフォーラムの投稿からランダムな起動コマンドをコピーするのではなく、サーバー ソフトウェアと Java バージョンに応じて最新の信頼できる起動フラグを使用してください。マネージド ホスティング プラットフォームを使用している場合、価値の一部は、不適切なデフォルトを回避し、初日からよりクリーンなベースラインを取得できることです。

また、OS およびコントロール パネルのプロセスのための余裕を残しておきます。利用可能な RAM のほぼすべてを Minecraft に割り当てることは、机上では効率的であるように見えますが、運用環境ではひどいものに感じられます。

バックアップ、監視、再起動戦略

最適化はピーク TPS だけを意味するものではありません。また、何かが壊れたときに回復できる状態を保つことも重要です。頻繁なバックアップ、ストレージの認識、基本的な監視は、時間の経過とともに大きな違いをもたらします。

クリーンアップを行わずに何日もサーバーを実行すると、メモリの問題、プラグインのエッジ ケース、またはクラッシュ後の破損した動作が蓄積される可能性があります。スケジュールされた再起動はすべての問題を解決できるわけではありませんが、安定したセットアップの実用的な部分となる可能性があります。重要なのは、マシンが壊れかけてプレイヤーがラッシュしているときにではなく、自分の都合に合わせて再起動することです。

CPU 使用率、メモリ消費量、ディスク容量、TPS の傾向を監視することで、プレイヤーが苦痛を感じる前にアップグレードできます。これは成長するコミュニティにとって特に重要です。スケーリングに適した時期は、Discord が遅延レポートでいっぱいになった後ではなく、指標が圧力の高まりを示しているときです。

チューニングを続ける代わりにアップグレードする場合

最適化が効率的でなくなる点があります。プラグインをクリーンアップし、ワールドを事前生成し、距離を調整し、エンティティの混乱を減らし、Java 設定を検証したにもかかわらず、サーバーが通常のピーク負荷で依然として苦戦している場合は、おそらく、より優れたハードウェアまたはより適切な計画が必要です。

それは失敗ではありません。それはキャパシティプランニングです。 10 人のカジュアル プレイヤー向けに構築されたサーバーは、30 人のアクティブ ユーザー、複数のファーム、およびトレードオフなしの継続的な探索を処理することは想定されていません。インフラストラクチャが優れていれば、毎週末をトラブルシューティング セッションにしなくても、成長する余地が得られます。

最高の Minecraft サーバー最適化ガイドは、サーバーをプレイしやすく、予測可能で、管理しやすい状態に保つものです。実際のボトルネックから始めて、プレイヤーベースに合わせて変更を加え、パフォーマンスをビルドの一部のように扱います。遅延が始まってから修正するものではありません。