※本記事は2025年7月時点の最新情報に基づいて執筆されています。
【2025年7月最新】マイクラ Pufferfish サーバー 高速化完全ガイド – Paper比較と最適化設定
目次
1. Pufferfishサーバーとは
Pufferfishは、Paperをベースにした高性能なマインクラフトサーバーソフトウェアです。大規模サーバーに特化した最適化が施されており、エンタープライズ機能と最高のパフォーマンスを提供することを目的としています。
1.1 Pufferfishの特徴
- 高度な最適化: Paperの全機能を保持しながら、追加の最適化を実装
- 完全互換性: Paperプラグインとの完全な互換性を維持
- エンタープライズ機能: 大規模サーバー運用に必要な機能を搭載
- オープンソース: GitHubで公開され、コミュニティによる開発
2025年7月現在の最新情報: Pufferfish+は標準版と比較して25-30%の性能向上を実現しています。
1.2 Pufferfish vs Pufferfish+
項目 | Pufferfish(標準版) | Pufferfish+ |
---|---|---|
ライセンス | オープンソース | プロプライエタリ |
パフォーマンス | Paperより高速 | 標準版より25-30%高速 |
非同期機能 | 基本的な最適化 | 非同期エンティティトラッカー、パスファインディング |
サポート | コミュニティサポート | エンタープライズサポート |
2. Paper比較とパフォーマンス検証
2.1 Paper vs Pufferfishの性能比較
2025年7月時点での最新ベンチマークテストに基づく比較結果をご紹介します。
テスト項目 | Paper | Pufferfish | Pufferfish+ | 改善率 |
---|---|---|---|---|
TPS安定性(100人同時接続) | 18.5 TPS | 19.2 TPS | 19.8 TPS | +7.0% |
チャンク生成速度 | 基準値 | +15% | +25% | +25% |
エンティティ処理 | 基準値 | +20% | +35% | +35% |
メモリ使用量 | 基準値 | -10% | -15% | -15% |
2.2 実際の運用における体感差
- プレイヤー50人以下: 体感的な違いは少ない
- プレイヤー50-100人: 明確な安定性向上を実感
- プレイヤー100人以上: 大幅な性能向上、TPS安定性が向上
- 大規模建築・レッドストーン: 処理速度の向上が顕著
3. 1.21.7対応と最新版情報
重要: Minecraft 1.21.6以降では、Java 21が必須要件となっています。
3.1 対応バージョン情報
Minecraftバージョン | Pufferfishサポート | 必要Javaバージョン | リリース日 |
---|---|---|---|
1.21.7 | ✓ 対応済み | Java 21 | 2025年6月30日 |
1.21.6 | ✓ 対応済み | Java 21 | 2025年6月17日 |
1.21.5 | ✓ 対応済み | Java 21 | 2025年3月25日 |
1.21.4以前 | ✓ 対応済み | Java 17 | – |
3.2 1.21.7の新機能と最適化
- バグ修正: クラッシュ修正とパフォーマンス向上
- 新音楽ディスク: 「A Minecraft Movie」関連コンテンツ
- 絵画追加: 新しい絵画アイテムの追加
- 最適化: メモリ使用量の削減
4. config.yml最適化設定
4.1 基本設定の最適化
server.properties最適化
# 基本設定 server-port=25565 gamemode=survival difficulty=normal spawn-protection=0 max-players=100 view-distance=10 simulation-distance=10 # パフォーマンス設定 network-compression-threshold=256 max-tick-time=60000 use-native-transport=true enable-jmx-monitoring=false enable-status=true enable-query=false enable-rcon=false
4.2 pufferfish.yml設定
主要な最適化設定
# Pufferfish Configuration File # 2025年7月最新版 settings: # 基本設定 save-user-cache-on-stop-only: true # DAB(Dynamic Activation of Blocks)設定 dab: enabled: true start-distance: 12 max-tick-frequency: 20 activation-dist-mod: 8 # 非同期設定 async-pathfinding: enabled: true max-threads: 0 keepalive: 60 # インアクティブゴール設定 inactive-goal-selector-throttle: true # バニラ互換性 enable-books-in-lectern: true # パフォーマンス設定 disable-method-profiler: true disable-relative-projectile-velocity: false # エンティティ設定 entity-activation-range: villagers: 32 monsters: 32 raiders: 48 misc: 16 water: 16 flying-monsters: 32 # チャンク設定 max-loads-per-projectile: 10 projectile-load-save-per-chunk-limit: 10
4.3 paper-world-defaults.yml最適化
Paper設定の最適化
# Paper World Configuration # 高負荷サーバー向け設定 chunks: auto-save-interval: 6000 delay-chunk-unloads-by: 10s entity-per-chunk-save-limit: experience_orb: 16 snowball: 8 ender_pearl: 8 arrow: 16 entities: armor-stands: do-collision-entity-lookups: false tick: false behavior: allow-spider-world-border-climbing: false disable-chest-cat-detection: false disable-player-crits: false door-breaking-difficulty: husk: zombie: zombie_villager: experience-merge-max-value: 4 mobs-can-always-pick-up-loot: zombies: false skeletons: false nerf-pigmen-from-nether-portals: false piglins-guard-chests: true pillager-patrols: spawn-chance: 0.2 spawn-delay: per-player: false ticks: 12000 start: per-player: false day: 5 should-remove-dragon: false spawner-nerfed-mobs-should-jump: false zombie-villager-infection-chance: -1.0 zombies-target-turtle-eggs: true environment: disable-explosion-knockback: false disable-ice-and-snow: false disable-teleportation-suffocation-check: false disable-thunder: false fire-tick-delay: 30 frosted-ice: delay: max: 40 min: 20 enabled: true generate-flat-bedrock: false nether-ceiling-void-damage-height: 0 optimize-explosions: true portal-create-radius: 16 portal-search-radius: 128 portal-search-vanilla-dimension-scaling: true water-over-lava-flow-speed: 5
4.4 bukkit.yml最適化
Bukkit設定の調整
# Bukkit Configuration # パフォーマンス向け設定 settings: allow-end: true warn-on-overload: true permissions-file: permissions.yml update-folder: update plugin-profiling: false connection-throttle: 4000 query-plugins: true deprecated-verbose: default shutdown-message: Server closed minimum-api: none spawn-limits: monsters: 50 animals: 8 water-animals: 5 water-ambient: 20 water-underground-creature: 5 axolotls: 5 ambient: 1 chunk-gc: period-in-ticks: 400 ticks-per: animal-spawns: 400 monster-spawns: 5 water-spawns: 11 water-ambient-spawns: 21 water-underground-creature-spawns: 69 axolotl-spawns: 201 ambient-spawns: 31 autosave: 6000
5. JVMフラグとメモリ最適化
5.1 Java 21対応Aikarフラグ
2025年7月更新: Java 21向けに最適化されたAikarフラグを使用してください。
推奨JVMフラグ(Java 21対応)
#!/bin/bash java -Xms10G -Xmx10G \ -XX:+UseG1GC \ -XX:+ParallelRefProcEnabled \ -XX:MaxGCPauseMillis=200 \ -XX:+UnlockExperimentalVMOptions \ -XX:+DisableExplicitGC \ -XX:+AlwaysPreTouch \ -XX:G1NewSizePercent=30 \ -XX:G1MaxNewSizePercent=40 \ -XX:G1HeapRegionSize=8M \ -XX:G1ReservePercent=20 \ -XX:G1HeapWastePercent=5 \ -XX:G1MixedGCCountTarget=4 \ -XX:InitiatingHeapOccupancyPercent=15 \ -XX:G1MixedGCLiveThresholdPercent=90 \ -XX:G1RSetUpdatingPauseTimePercent=5 \ -XX:SurvivorRatio=32 \ -XX:+PerfDisableSharedMem \ -XX:MaxTenuringThreshold=1 \ -XX:+UseZGC \ -XX:+UnlockExperimentalVMOptions \ -Dusing.aikars.flags=https://mcflags.emc.gs \ -Daikars.new.flags=true \ -Dfile.encoding=UTF-8 \ -Duser.country=JP \ -Duser.language=ja \ -Xlog:gc*:logs/gc.log:time,uptime:filecount=5,filesize=1M \ -jar pufferfish.jar --nogui
5.2 メモリ割り当て推奨値
プレイヤー数 | 推奨メモリ | 最小メモリ | 備考 |
---|---|---|---|
1-10人 | 4GB | 2GB | 小規模サーバー |
11-30人 | 8GB | 4GB | 中規模サーバー |
31-60人 | 12GB | 8GB | 大規模サーバー |
61-100人 | 16GB | 12GB | エンタープライズ |
100人以上 | 24GB以上 | 16GB | Pufferfish+推奨 |
6. JFR(Java Flight Recorder)解析
6.1 JFRの有効化
JFR設定フラグ
# JFR記録開始フラグ -XX:+FlightRecorder \ -XX:StartFlightRecording=duration=60s,filename=server-profile.jfr,settings=profile \ -XX:FlightRecorderOptions=maxchunksize=32m
6.2 JFRデータの解析方法
- JFRファイル生成: サーバー起動時に自動生成
- JMCで解析: Java Mission Control使用
- パフォーマンス確認: GC頻度、メモリ使用量確認
- 最適化実施: 結果に基づく設定調整
6.3 JFR解析の重要指標
- GC頻度: 1秒あたりのGC回数
- GC時間: 各GCの実行時間
- メモリ使用量: ヒープメモリの使用状況
- CPU使用率: プロセッサーの負荷状況
- スレッド状態: スレッドの実行状況
7. 監視とトラブルシューティング
7.1 パフォーマンス監視コマンド
便利なコマンド一覧
# TPS確認 /tps # メモリ使用量確認 /gc # エンティティ数確認 /minecraft:entity # プロファイリング開始 /spark profiler start # プロファイリング停止 /spark profiler stop # GC統計確認 /gc stats
7.2 よくある問題と解決策
問題1: TPS低下
- 原因: エンティティ過多、チャンク読み込み過多
- 解決: エンティティ制限、chunk-gc設定調整
問題2: メモリ不足
- 原因: 不適切なメモリ設定、メモリリーク
- 解決: JVMフラグ調整、プラグイン見直し
問題3: 起動失敗
- 原因: Java版不一致、設定ファイルエラー
- 解決: Java 21インストール、設定ファイル確認
8. 推奨サーバーサービス比較
Pufferfishサーバーに最適化されたホスティングサービスをご紹介します。
ConoHa for GAME
特徴: 初期費用無料、月額394円から利用可能
- 2GB〜64GBまで柔軟なメモリ選択
- Minecraftテンプレート標準搭載
- 日本国内サーバーで低遅延
- 24時間365日サポート
Xserver VPS for Game
特徴: ゲーム専用VPSサービス
- 高性能CPU(Intel Xeon)搭載
- NVMe SSD標準装備
- Minecraft管理ツール付属
- 自動バックアップ機能
9. まとめ
Pufferfishサーバーは、Paperをベースにした高性能なMinecraftサーバーソフトウェアです。適切な設定により、大幅なパフォーマンス向上が期待できます。
重要なポイント
- Java 21の使用(1.21.6以降必須)
- 適切なメモリ設定(推奨10GB以上)
- JFRによる定期的な性能監視
- config.ymlの最適化
- 信頼性の高いホスティングサービス選択
10. FAQ(よくある質問)
Q1: Pufferfishは無料で使用できますか?
A1: Pufferfish(標準版)は完全に無料で使用できます。Pufferfish+は有料版ですが、より高い性能を提供します。
Q2: Paperプラグインは使用できますか?
A2: はい、Pufferfishは100%Paper互換性を保持しているため、すべてのPaperプラグインが使用できます。
Q3: 既存のPaperサーバーから移行できますか?
A3: はい、jarファイルを置き換えるだけで簡単に移行できます。設定ファイルも引き継がれます。
Q4: Java 21は必須ですか?
A4: Minecraft 1.21.6以降では必須です。それ以前のバージョンではJava 17で動作します。
Q5: メモリはどのくらい必要ですか?
A5: 最低6GB、推奨10GB以上です。プレイヤー数に応じて調整してください。
免責事項
※本記事は2025年7月時点の情報に基づいて執筆されています。内容の正確性には万全を期していますが、最新情報は各公式サイトをご確認ください。
※サーバー設定の変更は自己責任で行ってください。重要なデータは必ずバックアップを取得してから作業を行ってください。
※記載されている会社名、製品名は、各社の登録商標または商標です。