ホームページ >バックエンド開発 >PHPチュートリアル >cgi、fast-cgi、php-fpmの関係(フローチャート付き)

cgi、fast-cgi、php-fpmの関係(フローチャート付き)

藏色散人
藏色散人転載
2022-10-08 14:07:113385ブラウズ

cgi、fast-cgi、php-fpmの関係(フローチャート付き)

まず CGI について話しましょう

  • cgi はプロトコルであり、何の関係もありませんたとえば、Web サーバー (nginx) が PHP ネットワーク リクエストを受信すると、nginx は設定ファイルに従って PHP パーサーを見つける必要があります。単純な処理の後、要求された情報の一部が、 PHP パーサー このとき、どのプロトコルをどのような形式で送信するかを規定しており、この規格を cgi プロトコルと呼びます

  • #php の説明は、このプロトコルを実装した CGI プログラムです, nginx はこれらのコンテンツを php に渡します。インタプリタの後、php.ini などの初期化環境を読み取り、データを処理し、最後にこのプロトコルに準拠したデータ ストリームに変換して nginx に送信し、最後にそれを返します。ブラウザへ [推奨: PHP ビデオ チュートリアル ]

fast-cgi は CGI プログラムを管理します

  • fast-cgi は常駐プロセス プログラムであり、それぞれに cgi が使用されます。 Web リクエストとプロセスの違いは、fast-cgi は Web サーバーの起動時に複数の CGI プログラムを同時に起動することです。動的ページ リクエストが受信されると、データ フローを fast-cgi プロセス マネージャーに引き渡すことができるため、Web サーバーがより多くのリクエストを処理し、php.ini を 1 回だけ解析できるため、応答速度が向上するという利点があります。

図は次のとおりです

cgi、fast-cgi、php-fpmの関係(フローチャート付き)

php-fpm は CGI プログラムを管理します

  • まず、php-fpm は、fast-cgi を統合し、いくつかの新しい機能を追加した製品です. Web サーバーによって提供される fast-cgi プログラムには、php-cgi を管理する際に多くの欠点があるため、たとえば、設定がphp.ini ファイルが変更された場合、それを有効にするために Web サーバーを再起動する必要があります (php-cgi を使用すると、php-cgi がスムーズに起動できず強制終了します。php-cgi を使用すると PHP が正常に動作しません)。これらの問題は、php-fpm# を使用すると解決できます。

  • ##このときのフローチャートは以下の通りです

##

以上がcgi、fast-cgi、php-fpmの関係(フローチャート付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。