2026年7月11日
2026年7月11日
WordPressのPHP-FPMのpool設定を最適化する方法
はじめに
PHP-FPM(FastCGI Process Manager)は、PHPスクリプトを処理するための効率的なサーバープロセス管理ツールです。WordPressサイトのパフォーマンスを向上させるために、PHP-FPMのpool設定を適切に調整することが重要となります。
症状・背景
このテーマが必要になる主な場面:
- サイトが慢性的に遅い
- ページ読み込み時にエラーが多い
- 高負荷時のサイトの応答性が低い
- 大規模なアクセスやデータベース操作が多い
手順・設定方法
ステップ1: PHP-FPMのプールファイルの確認と編集
# まず、PHP-FPMのプール設定ファイルがあるディレクトリを確認します。
ls /etc/php/7.4/fpm/pool.d/
# WordPress用のプール設定ファイルを開きます。通常はwww.confです。
nano /etc/php/7.4/fpm/pool.d/www.conf
ステップ2: プロセス数と最大メモリ使用量の調整
# デフォルトでは、プロセスの上限数が設定されています。アクセスが多いサイトの場合、これを増やします。
max_children = 50
# 各プロセスの最大メモリ使用量を制限します。
pm.max_memory_limit = 256M
ステップ3: プロセス管理オプションの設定
# 間隔で自動的にプロセスを再起動する時間を指定します。これにより、メモリリークなどの問題を防ぐことができます。
pm.max_requests = 500
# PHP-FPMが接続を待つタイムアウト時間を調整します。
request_terminate_timeout = 30
ステップ4: ロギングと監視の設定
# ログファイルの場所と名前を指定します。これにより、トラブルシューティングが容易になります。
access.log = /var/log/php-fpm/access.log
error.log = /var/log/php-fpm/error.log
注意事項
- プロセス数は適切に設定すること:プロセスの数を増やしすぎると、メモリ不足になる可能性があります。
- 定期的に監視と調整を行うこと:アクセスパターンが変わるたびに、パフォーマンスを最適化するための再評価が必要です。
- セキュリティ設定も確認すること:プロファイル権限やバッファーサイズなどのセキュリティ関連設定は適切に管理することが重要です。
- 運用モニタリングツールを使用すること:システム監視ツールを導入して、PHP-FPMのパフォーマンスを継続的にチェックすることをお勧めします。
まとめ
1. プロセス数の最適化: アクセスパターンに合わせてプロセス数を調整します。
2. メモリ使用量の制限: 各プロセスの最大メモリ使用量を設定して、メモリリークを防ぎます。
3. 自動再起動の設定: リクエストごとの上限回数を設定することで、安定性が向上します。
4. ログファイルの適切な設定: トラブルシューティングに役立つ詳細なログ情報を取得します。
5. 定期的な監視と調整: 環境やアクセスパターンの変化に対応するため、継続的なモニタリングが必要です。
関連記事: