php cgi.exe プロセスが多すぎる場合の対処方法

藏色散人
リリース: 2023-03-05 17:08:01
オリジナル
2870 人が閲覧しました

php cgi.exe プロセスが多すぎる問題の解決策: まずシステム ディスク領域をチェックして一時システム ファイルが多すぎるかどうかを確認し、次に「del *.*」コマンドを使用してすべてを削除します。ファイルを作成し、プログラム構成ファイルを に追加します。StartProcesses 値は 2 に減らされ、最後に fastcgi 構成ファイルのパラメーターを最適化します。

php cgi.exe プロセスが多すぎる場合の対処方法

推奨: 「PHP ビデオ チュートリアル

php cgi.exe プロセスが多すぎる場合の解決策:

サーバー上の php-cgi.exe プロセスが多すぎるため、CPU が 100% を占有しています。解決策:

1. システムのディスク容量を確認します。システムに一時ファイルが多すぎないか確認します。MySQL データベースの一時ファイルはデフォルトで c:/windows/temp に保存されるため、数万、場合によっては数百万の小さなファイルが蓄積され、システム ディスクを圧迫します。 。

del *.* すべてのファイルを削除します

2. IIS には PHP 言語のサポートが組み込まれていないため、PHP を使用するには、自分でインストールする必要があります。 PHP は CGI モードと ISAPI モードでインストールできますが、ISAPI モードの方がパフォーマンスが高いため、ISAPI モードの使用を推奨します。

3. プログラムを変更できる場合は、プログラム構成ファイルの StartProcesses 値を 2 に減らして、改善されるかどうかを確認することをお勧めします。

4. サーバーに問題がないか確認します。

Windows 2003 IIS6 の fastcgi 構成ファイル fcgiext.ini を最適化して、php-cgi.exe プロセスの数とメモリ サイズを削減します。

構成環境は Windows 2003 IIS6 fastcgi (FCGI) です。 PHP5.2.17 では、FastCGI モードで動作する PHP がより多くのメモリを占有することがわかりました。アクセス量がわずかに多い場合、N 個以上の php-cgi プロセスが存在します。同じ状況では、以前よりも数百 MB 多くなる可能性があります。 isapi モードを使用していますが、サーバーのメモリは 2G しかないので、余裕がありません。

この問題の解決策は、Web サーバー構成の fastcgi 構成ファイルのパラメーターを最適化することです。

C:\WINDOWS\system32\inetsrv\fcgiext.ini ファイルで、次のような php-cgi プロセス関連のパラメータを設定できます。

 [Types]
  php = PHP
  [PHP]
  ExePath=C:\php-5.3.8-nts-Win32-VC9-x86\php-cgi.exe
  maxInstances=100
  InstanceMaxRequests=10000
  EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000
  RequestTimeout=600
  ActivityTimeout=900
ログイン後にコピー

上記の構成では:

ExePath は FastCGI パーサーへのパスを指定します。

#instanceMaxRequests は各インスタンスが処理できるリクエストの最大数を指定します。

maxInstances は起動できるインスタンスの最大数を指定します。

EnvironmentVars は環境変数 PHP_FCGI_MAX_REQUESTS を作成し、デフォルト値は 10000 に設定されます。

requestTimeout はリクエストのタイムアウトを 600 秒に指定し、

activityTimeout はアクティブ セッションのタイムアウトを 900 秒に指定します秒。

以下は推奨値です

maxInstances=

この値をより小さい値に変更することをお勧めします

512M メモリ maxInstances=50

1G メモリの変更 maxInstances=80

2G メモリの変更 maxInstances=140

その後、変更します

 InstanceMaxRequests=
ログイン後にコピー
この値をより小さい値に変更することをお勧めします

512M メモリ変更 InstanceMaxRequests=200

InstanceMaxRequests=300

を 1G のメモリに変更 InstanceMaxRequests=500

を 2G のメモリに変更 変更が完了すると、 IISを再起動します。

以上がphp cgi.exe プロセスが多すぎる場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート