ホームページ  >  記事  >  バックエンド開発  >  PHPとNginxの2つの導入方法の比較(写真)

PHPとNginxの2つの導入方法の比較(写真)

黄舟
黄舟オリジナル
2017-06-18 09:31:461430ブラウズ

この記事では、主に Nginx と PHP の 2 つの導入方法の比較に関する関連情報を紹介します。必要な友人は、

Nginx と PHP の比較の詳細な説明を参照してください。 2 つの展開方法のうち

2 つの展開方法はじめに

最初の方法

  • HTTP リバースプロキシと負荷分散のために前に 1 つの nginx サーバー

  • 後ろにも Nginx サーバーWeb サービスとして機能し、php-fpm によって提供される高速 CGI サービスを呼び出します

  • このデプロイメント方法は、Web サービスと PHP サービスの両方が同じサーバーにデプロイされるのが最も一般的です

2 番目のタイプです。

    Webサービス用にフロントに1つのnginxサーバー
  1. バックサーバーは、nginxサーバーが呼び出すためのphp-fpmサービスのみをデプロイします
  2. フロントに1つのnginxサーバーと、戻る 負荷分散も実現できます
  3. 以下に示すように:

比較

システム設計の観点から

最初の導入方法は、大規模、中規模のシステムに適用できる従来の導入方法です。 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 プロトコルです

    。高速 CGI のデータ パケットは HTTP よりわずかに大きく、高速 CGI プロトコルは HTTP よりも大きく、より多くのパラメータ情報、送信制御情報などが含まれます。高速 CGI プロトコルは HTTP プロトコルよりも厳密にフォーマットされており、運用とメンテナンスの観点から見ると、最初の方法は最も一般的な展開方法であり、Web サービスを提供するすべてのサーバー上のサービスは均一で単調で広範囲です。
  1. 2 つ目は、nginx と PHP-fpm を別々にデプロイすることで、サーバー クラスター上でのさまざまなサービスの分散がより詳細になります。 Web サービスの圧力分散をカウントすると、ハードウェア リソースをより正確に利用できます。運用保守コストも高くなります。

  2. 開発とテストの観点から

  3. どちらの展開方法も、開発環境やテスト環境には適していません。

開発およびテスト環境では、リバース プロキシや負荷分散を使用せずに、nginx と PHP を 1 つのサーバーにデプロイできます。

概要

LAMP 環境のデプロイメントの場合は、最初のタイプがより一般的です。

LAMP ではない場合は、C/C++ や Java fastcgi プログラムなどの他の fastcgi サービスと対話する nginx です。大規模なネットワーク アプリケーションでは、2 番目のような展開が一般的です。さまざまなサービスを個別に展開すると、システムのネットワーク構造が簡素化され、メンテナンスが容易になります。

以上がPHPとNginxの2つの導入方法の比較(写真)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。