ホームページ > バックエンド開発 > PHPチュートリアル > NginxとPHPの2つの導入方法の比較

NginxとPHPの2つの導入方法の比較

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-07-29 09:12:53
オリジナル
1036 人が閲覧しました

2つの導入方法の紹介

最初の方法

  • HTTPリバースプロキシと負荷分散を行うために前にある1つのnginxサーバー
  • 後ろのNサーバーのNginxはWebサービスを実行し、phpを呼び出します-fpm 提供される高速 CGI サービス
  • この種のデプロイ方法は、Web サービスと PHP サービスの両方が同じサーバー上にデプロイされるのが最も一般的です

2 番目のタイプ

  • に nginx サーバーが配置されます。 Webサービスのフロント
  • バック nginxサーバーが呼び出すためのphp-fpmサービスのみを展開します
  • 後から複数のphp-fpmサービスを呼び出す際にも負荷分散が可能です

以下に示すように:

Nginx 和 PHP 的两种部署方式比较

比較

システム設計の観点から

最初の展開方法は、大規模、中規模、および小規模の Web サイトに適用できる従来の展開方法です。

2 番目の方法は、異なるサーバーに異なるサービスをデプロイすることであり、これはより詳細です。しかし、いくつかの問題もあります:

  • フロントエンドの nginx は Web サービスとして機能します。静的リソースへのアクセス、圧縮送信、キャッシュ設定等もこのサーバーに集中します。大きなプレッシャーがかかり、それがボトルネックになりやすいです。
  • 静的リソースがすべて CDN に保存され、HTTP 圧縮送信が必要ない場合、このデプロイ方法は比較的合理的です。
  • 上記 2 つの点を考慮すると、このデプロイ方法も最適化できます。たとえば、nginx ロード バランシングとリバース プロキシが前面に配置され、nginx Web サービスが中間に、php-fpm サービスが背面にデプロイされます。

パフォーマンスの観点から

2 番目の展開方法と比較して、最初の方法ではプロセス間の対話が 1 つ多く必要になります。

  • 最初のデプロイメントによると、http リクエストが来ると、まず nginx リバース プロキシがそれを (ネットワーク経由で) nginx Web サービスに転送し、Web サービスは fastcgi プロトコル (プロセス間) を通じて php-fpm と対話します。インタラクション); 2 番目のデプロイメントによれば、http リクエストが来ると、Web サービスとして機能する nginx はネットワークを介して php-fpm と直接対話します
  • 最初のデプロイメントでは、ネットワークを介したインタラクションはHTTP プロトコル、そして 2 番目のタイプのネットワーク経由の対話、それは fast-cgi プロトコルです。これら 2 つのプロトコルはどのように比較されますか?

高速 CGI データ パケットは HTTP よりわずかに大きく、高速 CGI プロトコルは HTTP よりも多くのパラメータ情報、送信制御情報などを運びます。
  • 高速 CGI プロトコルは、HTTP プロトコルよりも厳密にフォーマットされており、解析が高速です。
運用と保守の観点から

    1 つ目は、シンプルで統一された最も一般的な展開方法であり、Web サービスを提供するすべてのサーバー上のサービスは同形で単調かつ広範囲です。
  • 2 番目の方法は、nginx と php-fpm を別々にデプロイすることであり、サーバー クラスター上でのさまざまなサービスの分散がより詳細になります。 Web サービスの圧力分散をカウントすると、ハードウェア リソースをより正確に利用できます。運用保守コストも高くなります。
開発とテストの観点から

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

開発およびテスト環境では、nginx と PHP を 1 つのサーバーにデプロイでき、リバース プロキシとロード バランシングは必要ありません。

概要

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

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

追記

このブログ投稿の内容は、QQ グループの元 Baidu 同僚とのディスカッションに基づいています。

転載の際は出典を明記してください

ブログホームページ:Zuochengの技術ブログ

記事タイトル:「Nginx」 PHPの2つの導入方法の比較》

この記事へのリンク: http://it.zuocheng.net/compare-2-nginx-php-deployee-mode-zh

上記では、関連する側面を含め、Nginx と PHP の 2 つのデプロイメント方法の比較を紹介しましたが、PHP チュートリアルに興味のある友人に役立つことを願っています。

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