この記事では、主に Nginx と PHP の 2 つの導入方法の比較に関する関連情報を紹介します。必要な友人は、
Nginx と PHP の比較の詳細な説明を参照してください。 2 つの展開方法のうち
2 つの展開方法はじめに
最初の方法
HTTP リバースプロキシと負荷分散のために前に 1 つの nginx サーバー
後ろにも Nginx サーバーWeb サービスとして機能し、php-fpm によって提供される高速 CGI サービスを呼び出します
このデプロイメント方法は、Web サービスと PHP サービスの両方が同じサーバーにデプロイされるのが最も一般的です
2 番目のタイプです。
比較
システム設計の観点から最初の導入方法は、大規模、中規模のシステムに適用できる従来の導入方法です。 2 つ目は、異なるサービスが異なるサーバーにデプロイされていることですが、いくつかの問題もあります:
フロントエンドの nginx は Web サービスとして機能し、圧縮送信、
キャッシュ静的リソースが CDN に保存されており、HTTP 圧縮送信が必要ない場合、この導入方法は非常に合理的です。 このデプロイ方法は、中間に nginx ロード バランシングとリバース プロキシを配置し、後ろにデプロイする php-fpm サービスなど、パフォーマンスの観点から最適化することもできます。最初のタイプでは、もう 1 つのプロセス間対話が必要です
最初のタイプの展開によれば、http リクエストが来ると、まず nginx リバース プロキシがそれを (ネットワーク経由で) nginx Web サービスに転送し、Web に転送します。サービスは、fastcgi プロトコルを通じて nginx Web サービスと通信します (プロセス間対話)
2 番目のデプロイメントによれば、http リクエストが来ると、nginx は Web サービスとして機能し、php と直接対話します。ネットワーク経由の -fpm
最初のデプロイメント、ネットワーク経由で対話するものは HTTP プロトコル、ネットワーク経由で対話する 2 つ目は fast-cgi プロトコルです
2 つ目は、nginx と PHP-fpm を別々にデプロイすることで、サーバー クラスター上でのさまざまなサービスの分散がより詳細になります。 Web サービスの圧力分散をカウントすると、ハードウェア リソースをより正確に利用できます。運用保守コストも高くなります。
開発およびテスト環境では、リバース プロキシや負荷分散を使用せずに、nginx と PHP を 1 つのサーバーにデプロイできます。
概要LAMP 環境のデプロイメントの場合は、最初のタイプがより一般的です。
LAMP ではない場合は、C/C++ や Java fastcgi プログラムなどの他の fastcgi サービスと対話する nginx です。大規模なネットワーク アプリケーションでは、2 番目のような展開が一般的です。さまざまなサービスを個別に展開すると、システムのネットワーク構造が簡素化され、メンテナンスが容易になります。
以上がPHPとNginxの2つの導入方法の比較(写真)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。