nginx リバースプロキシとロードバランシングの間の関係は何ですか?
世界只因有你
世界只因有你 2017-05-16 17:21:36
0
4
545

nginx リバース プロキシとロード バランシングの間の関係は何ですか?

世界只因有你
世界只因有你

全員に返信 (4)
洪涛
  • リバース プロキシとは、バックエンド サービスが外部に直接公開されないことを意味します。リクエストは最初に nginx に送信され、次に nginx はそのリクエストを Tomcat などのバックエンド サーバーに転送します。 -end サービスにはサーバーが 1 つだけあり、nginx はリクエストを受信するバックエンド サービスのプロキシとして機能します。これはリバース プロキシと呼ばれます。

  • しかし、実際のアプリケーション シナリオでは、バックエンド サーバー上で単一障害点が発生する可能性が非常に高いか、単一マシンのスループットが制限されていて、あまりにも多くのリクエストを処理できない場合があります。現時点では、複数のサーバーを構成する必要があります。 nginx バックエンドでは、nginx の組み込みルールを使用してリクエストを別のバックエンド マシンに転送します。このとき、負荷分散の役割を果たします。
  • もちろん、私は大まかに話しているだけで、実際のアーキテクチャはこれよりもはるかに複雑ですが、違いを理解するには十分です。

いいねを押す+0
    洪涛

    リバース プロキシがない場合は、単一の http サーバーに圧力が直接かかります。リバース プロキシでは、通常、1 つの ngnix がリバース プロキシとして機能し、その後に複数の http サーバーが続きます。すべてのトラフィックに対する ngnix は、設定されたポリシー (ローテーション、ランダム性、またはプレッシャー シャント) に従ってトラフィックを次の HTTP サーバーに転送すると考えてください。これにより、負荷分散が実現されます。

    ngnix + ノード負荷分散 - SegmentFault - /a/1190000003023558

    いいねを押す+0
      大家讲道理

      2 つのこと:

      • リバース プロキシ: アプリケーション サーバーはサービスを直接提供せず、nginx などの http(s) サーバーを通じてリクエストを処理します。異なる場所 (異なるドメイン名、異なるリクエスト パスなど) に応じて、異なるアプリケーション サーバーに送信されます。 (Tomcat、Apache など) 応答を取得し、それをクライアントに渡します。ユーザーは、要求が nginx サーバーによって直接処理されているように見えます。

      • 負荷分散: 広義には、http サーバー レベルの負荷 (最も一般的なのは Nginx を使用すること) を指すだけでなく、LVS およびオペレーティング システム レベルの最適化処理も含まれます。その目的は、アプリケーション サーバーは迅速に応答すると同時に、基盤となるアプリケーション サーバーのブロックを引き起こさず、そのデータ処理機能をより有効に活用します。

      いいねを押す+0
        仅有的幸福

        リバース プロキシと負荷分散は本来 2 つの異なるものですが、nginx はリバース プロキシの上流のバックエンドに一般的に使用される負荷分散アルゴリズムをいくつか実装するだけです。

        いいねを押す+0
          最新のダウンロード
          詳細>
          ウェブエフェクト
          公式サイト
          サイト素材
          フロントエンドテンプレート
          私たちについて 免責事項 Sitemap
          PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!