CentOS7でphp-fpmプロセスが多すぎることによりサーバーのメモリリソースが過剰に消費される問題を解決
前書き:
最近サーバーのメモリ使用量が多くなっているのですが、調べた結果、php-fpm プロセスの過剰が関係している可能性があることが判明しました。この記事では、php-fpm 設定ファイルを最適化するプロセスを記録し、php-fpm に関連する知識を追加します。
php-fpm とは:
php-fpm は、php のメモリとプロセスを制御するために使用される FastCGI プロセス マネージャーです。
動作環境:
CentOS 7
問題確認:
まずは総数を確認してください。 php プロセス:
pstree|grep php-fpm
エコー:
|-php-fpm---20*[php-fpm]
エコー情報によると、クエリ中に 20 個の php-fpm プロセスが存在します。
次のコマンドを使用して、最も多くのメモリを消費する上位 50 のプロセスをリストすることもできます:
ps auxw|head -1;ps auxw|sort -rn -k4|head -50
解決プロセス:
構成を変更しましょう以下のファイルを使用して php-fpm を最適化し、メモリ使用量を削減します。
私の php-fpm 設定ファイルは .../server/php/etc/ ディレクトリにあります。このディレクトリに入ります。
最初に元の構成ファイルをバックアップします:
cp php-fpm.conf php-fpm.conf.bak
注:
vim を使用して構成ファイルを開いた後、Esc キーを押し、次に「/」を入力し、次に「xxx」を入力して文字列「xxx」を検索します。
具体的な構成パラメータは次のとおりです:
pm.max_children = 100改为:pm.max_children = 25 pm.start_servers = 20改为pm.start_servers = 5 pm.min_spare_servers = 5改为pm.min_spare_servers = 2 pm.max_spare_servers = 35改为pm.max_spare_servers = 10
サーバーを再起動します:
reboot
再起動後、メモリ使用量が以前よりも低下していることがわかります。
注:
1. php-fpm.conf のパラメータの説明:
pm.max_children:静态方式下开启的php-fpm进程数量。 pm.start_servers:动态方式下的起始php-fpm进程数量。 pm.min_spare_servers:动态方式下的最小php-fpm进程数。 pm.max_spare_servers:动态方式下的最大php-fpm进程数量。
2. 上記の設定を行うときは、 php --fpm の実行モードは動的に設定されています:
pm = dynamic
3.php-fpm には 2 つの実行モードがあります:
1 つは静的、もう 1 つは動的です。 static に設定した場合、pm.max_children パラメータのみが有効になります。動的に設定すると、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers の 3 つのパラメータが有効になります。動的に設定した後、php-fpm が起動すると、pm.start_servers のパラメータ設定に従って対応する数のプロセスが起動され、以降、php-fpm のプロセス数は pm で指定された数の間で維持されます。 .min_spare_servers および pm.max_spare_servers。
4. php-fpm の静的実行モードと動的実行モードの使用を選択する方法:
動的 php-fpm 実行モードを使用すると、php-fpm は冗長プロセスを解放できるため、メモリ リソースが節約されます。 。
静的 php-fpm 実行方法では、php-fpm が複数のプロセスを解放することはできません。これにより、php-fpm プロセスが頻繁に開始または停止されることがなくなり、場合によってはサーバーの応答時間が短縮されます。
PHP 関連の知識の詳細については、PHP チュートリアル をご覧ください。
以上がCentOS7でphp-fpmプロセスが多すぎることによりサーバーのメモリリソースが過剰に消費される問題を解決の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









php-fpm を使用して高パフォーマンスのチューニングを行う方法 PHP は、Web アプリケーションや動的 Web サイトの開発に広く使用されている、非常に人気のあるサーバーサイド スクリプト言語です。ただし、トラフィックが増加すると、PHP アプリケーションのパフォーマンスが低下する可能性があります。この問題を解決するには、php-fpm (FastCGIProcessManager) を使用して高性能チューニングを行うことができます。この記事では、php-fpm を使用して PHP アプリケーションのパフォーマンスを向上させる方法とコード例を紹介します。 1つ、

PHP-FPM 最適化を使用して PrestaShop アプリケーションのパフォーマンスを向上させる方法 電子商取引業界の急速な発展に伴い、PrestaShop は多くの販売者に選ばれる電子商取引プラットフォームになりました。ただし、ストアのサイズが大きくなり、訪問数が増加すると、PrestaShop アプリケーションはパフォーマンスのボトルネックに遭遇する可能性があります。 PrestaShop アプリケーションのパフォーマンスを向上させるための一般的な方法は、PHP-FPM を使用してアプリケーションの処理能力を最適化および向上させることです。 PHP-FPM (高速CGI)

PHP-FPM 最適化を使用して WooCommerce アプリケーションのパフォーマンスを向上させる方法 概要 WooCommerce は、WordPress Web サイトでオンライン ストアを作成および管理するための非常に人気のある e コマース プラグインです。ただし、ストアが成長し、トラフィックが増加すると、WooCommerce アプリが遅くなり、不安定になる可能性があります。この問題を解決するには、PHP-FPM を使用して、WooCommerce アプリケーションのパフォーマンスを最適化および向上させることができます。 PHP-FPとは

データベース アクセスのパフォーマンスを向上させるための php-fpm 接続プールの使用の概要: Web 開発において、データベース アクセスは最も頻繁で時間のかかる操作の 1 つです。従来の方法では、データベース操作ごとに新しいデータベース接続を作成し、使用後に接続を閉じます。この方法では、データベース接続の確立と終了が頻繁に発生し、システムのオーバーヘッドが増加します。この問題を解決するには、php-fpm 接続プール テクノロジを使用してデータベース アクセスのパフォーマンスを向上させることができます。接続プールの原理: 接続プールは、一定数のデータベースを組み合わせたキャッシュ技術です。

PHP-FPM は、PHP のパフォーマンスと安定性を向上させるために一般的に使用される PHP プロセス マネージャーです。ただし、高負荷環境では、PHP-FPM のデフォルト設定ではニーズを満たせない場合があるため、チューニングが必要です。この記事では、PHP-FPM のチューニング方法を詳しく紹介し、いくつかのコード例を示します。 1. プロセスの数を増やす デフォルトでは、PHP-FPM はリクエストを処理するために少数のプロセスのみを開始します。高負荷環境では、プロセス数を増やすことで PHP-FPM の同時実行性を高めることができます。

PHP-FPM 最適化を使用して Phalcon アプリケーションのパフォーマンスを向上させる方法 はじめに: Phalcon は高性能 PHP フレームワークであり、PHP-FPM と組み合わせるとアプリケーションのパフォーマンスをさらに向上させることができます。この記事では、PHP-FPM を使用して Phalcon アプリケーションのパフォーマンスを最適化する方法を紹介し、具体的なコード例を示します。 1. PHP-FPMPとはHP-FPM (PHPFastCGIProcessManager) はWebサーバーから独立したPHPプロセスです

php-fpmとは何ですか?次の記事では、php-fpm について理解し、php-fpm を最適化する際に何を最適化する必要があるかを紹介します。

php-fpm を使用しない Ubuntu の解決策: 1. 「sudo apt-get」コマンドを実行して PHP のソース アドレスを追加します; 2. php7 パッケージがあるかどうかを確認します; 3. 「sudo apt-get install」を実行して PHP をインストールします" コマンド; 4. nginx リクエストを処理するためにポート 9000 でリッスンするように設定を変更します。 5. 「sudo service php7.2-fpm start」を通じて「php7.2-fpm」を起動します。
