ホームページ >バックエンド開発 >PHPチュートリアル >CGI、FastCGI、PHP-CGI、PHP-FPM の簡単な理解

CGI、FastCGI、PHP-CGI、PHP-FPM の簡単な理解

Guanhui
Guanhui転載
2020-05-22 09:30:322481ブラウズ

CGI、FastCGI、PHP-CGI、PHP-FPM の簡単な理解

1. CGI とは何ですか?

は、パブリック ゲートウェイ インターフェイス プロトコル、プロトコルです。 CGI は、どのようなデータが送信され、どのような形式でリクエストを処理するためにバックエンドに渡されるかを規定するプロトコルです。

2. FastCGI とは何ですか?

FastCGI は、寿命の長い CGI のようなものです。 CGI と同じですが、最適化されており、プロトコルでもあります

3. php-CGI とは何ですか?

PHP-CGI は、PHP に付属する FastCGI プロセス マネージャーです。

4.php-fpmとは何ですか?

サードパーティの FastCG I プロセス マネージャーは、PHP-CGI のいくつかの問題を解決し、PHP-CGI を管理します。

5. php-fpm と fastcgi の関係は何ですか?

php-fpm は php 用であり、FastCGI プロトコルを実装し、php-CGI 管理用のプロセス マネージャーを提供します。

6. php-fpm はどのような問題を解決しますか?

php-CGI のグレースフル リスタート。

php-CGI の常駐管理。 (ここに常駐するということは、php-CGI プロセスが強制終了された後に php がハングアップし、php プロセスが強制終了された後に php-fpm が php-CGI を再起動することを意味します)

動的分離と静的分離は実装されていますか?

7. php-fpm は、いわゆる動的と静的な分離を実現するために、非 Web サーバー上で独立して実行されます。

8. php 上の php-cgi と php-fpm はどちらも php による FastCGI プロトコルの実装です。後者は、php-CGI プロセスの管理も提供します。

9. FastCGI はマルチプロセスであるため、CGI マルチスレッドよりも多くのサーバー メモリを消費します。つまり、メモリが大きくなく、同時リクエストも多くない場合は、FastCGI よりも CGI の方が適しています。

10. Web サーバーとは通常、Apache、Nginx、IIS、Lighttpd、Tomcat などのサーバーを指します。

11. Web アプリケーションとは、一般に、PHP、Java、Asp.net などのアプリケーションを指します。

12. SAPI とは何ですか? SAPI (Server Application Programming Interface) は、アプリケーション プログラミング インターフェイスです。 PHP で最も重要な SAPI は PHP-FPM です。 PHP-FPM は FastCGI の実装です。

13. 平たく言えば、SAPI は php-CGI、php-cli、mod_php などであり、php は php カーネルです。 SAPI のコアは構造体 sapi_module_struct です。 php-CGI、php-cli、mod_php はすべてこの構造を実装しています。

14. PHP は、php5_module、CGI、Apache および nginx 用の FastCGI、IIS 用の ISAPI、Shell CLI など、多くの種類の SAPI をデフォルトで提供します。

15. 合意: ルールの集合。インターフェイス: コード内のプロトコルの制約。

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

以上がCGI、FastCGI、PHP-CGI、PHP-FPM の簡単な理解の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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