ホームページ 運用・保守 Linuxの運用と保守 負荷分散とは何ですか?ロードバランシングの簡単な紹介

負荷分散とは何ですか?ロードバランシングの簡単な紹介

Mar 28, 2019 pm 02:38 PM
linux 負荷分散

この記事の内容は、負荷分散の紹介、負荷分散とは何か、負荷分散の利点などを理解することです。一定の参考値があるので、困っている友人は参考にしていただければ幸いです。

1. ロード バランシングとは

ロード バランスとは、Web サーバー、FTP サーバー、エンタープライズなどの複数のオペレーティング ユニットに実行を割り当てることを意味します。主要なアプリケーション サーバーやその他のミッションクリティカルなサーバーなどを統合して、共同で作業タスクを完了します。

文字通りに理解すると、N 台のサーバーが均等に負荷を分担し、特定のサーバーの負荷が高いために特定のサーバーがアイドル状態になることはないと説明できます。したがって、負荷分散の前提は、複数のサーバーで実現できること、つまり 3 台以上のサーバーで十分であるということです。

負荷分散は既存のネットワーク構造に基づいて構築されており、ネットワーク デバイスとサーバーの帯域幅を拡張し、スループットを向上させ、ネットワーク データ処理機能を強化し、ネットワークの柔軟性を向上させる、安価で効果的かつ透過的な方法を提供します。可用性。

2. ロード バランシングの利点

サーバーへの負荷を軽減し、本来 1 台のサーバーに必要なトラフィックを複数のサーバーに分散します。プロジェクトの可用性が向上します。サーバーがハングアップしても、プロジェクトは麻痺しません。

#3 層および 4 層の負荷分散および 7 層の負荷分散

4 層の負荷分散-layerload Balance は、OSI モデルのトランスポート層で動作し、その主な仕事は転送であり、クライアントのトラフィックを受信した後、データ パケットのアドレス情報を変更することによって、トラフィックをアプリケーション サーバーに転送します。

7 層ロード バランシング は、アプリケーション層トラフィックを解析する必要があるため、OSI モデルのアプリケーション層で機能します。そのため、クライアントのトラフィックを受信した後、7 層ロード バランシングも実行されます。完全な TCP/IP プロトコル スタックが必要です。 7 層の負荷分散では、クライアントとの完全な接続を確立し、アプリケーション層のリクエスト トラフィックを解析し、スケジューリング アルゴリズムに従ってアプリケーション サーバーを選択し、アプリケーション サーバーとの別の接続を確立してリクエストを送信します。負荷分散 主な仕事はエージェントとして機能することです。 7 層の負荷分散は「コンテンツ スイッチング」とも呼ばれ、主に、負荷分散デバイスによって設定されたサーバー選択方法と組み合わせて、メッセージ内の真に意味のあるアプリケーション層のコンテンツを通じて、最終的に選択される内部サーバーを決定します。

7 層負荷分散の利点: この方法では、クライアントのリクエストとサーバーの応答をあらゆる意味で変更できるため、ネットワーク層でのアプリケーション システムの柔軟性が大幅に向上します。 ; 高い安全性。

7層負荷分散は、広く使われているHTTPプロトコルを主な対象としているため、多数のWebサイトや社内情報基盤など、B/Sをベースに開発されたシステムが主な適用範囲となります。レイヤ 4 ロード バランシングは、ERP や C/S に基づいて開発されたその他のシステムなど、他の TCP アプリケーションに対応します。

4. 負荷分散ソフトウェア

Nginx、LVS、HaProxy などの負荷分散ソフトウェアは現在、最も普及している 3 つの負荷分散ソフトウェアを使用します。

5. 負荷分散アルゴリズム

1. ラウンドロビン: すべてのバックエンドに順番にリクエストを送信する最も簡単な方法です。デフォルトの割り当て方法でもあります;

2. 最小接続数 (least_conn): 現在のアクティブな接続数を追跡してバックエンドします。接続数が最小であることは、バックエンドの負荷が最も軽いことを示します。リクエストをバックエンドに割り当てます。これは、メソッドは、構成内の各アップストリームに割り当てられた重み情報を考慮に入れます;

3. 最小時間 (least_time): リクエストは、応答が最も速く、アクティブな接続の数が最も少ないバックエンドに割り当てられます。

4 、IP ハッシュ (ip_hash): リクエストの送信元 IP アドレスのハッシュ値を計算します。IPv4 では最初の 3 オクテットが考慮され、IPv6 ではすべてのアドレス ビットが考慮され、いくつかの方法でバックエンドに割り当てられます。取得したハッシュ値に基づくマッピング;

5. 汎用ハッシュ (ハッシュ): ユーザー定義のリソース (URL など) に基づいて配布を完了するためのハッシュ値を計算します。そのオプションの一貫したキーワードは一貫したハッシュをサポートします

6. DNS に基づく負荷分散

通常、最新のネットワーク サーバーのドメイン名は複数のホストに関連付けられています。 DNS クエリを実行すると、デフォルトで DNS サーバーはラウンドを使用します。 -robin モードは IP アドレスのリストを異なる順序で返すため、クライアント要求は自然に異なるホストに分散されます。ただし、この方法には固有の欠陥があります: DNS はホストと IP アドレスのアクセス可能性をチェックしないため、クライアントに割り当てられた IP が利用可能であるとは保証されません (Google 404); DNS 解決の結果はクライアントと複数の間で行われます。中間の DNS サーバーは常にキャッシュを行っているため、バックエンドの割り当ては理想的ではありません。

推奨ビデオ チュートリアル: 「

Linux チュートリアル

以上がこの記事の全内容です、皆様の学習のお役に立てれば幸いです。さらにエキサイティングなコンテンツについては、PHP 中国語 Web サイトの関連チュートリアルのコラムに注目してください。 ! !

以上が負荷分散とは何ですか?ロードバランシングの簡単な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

インターネットはLinuxで実行されますか? インターネットはLinuxで実行されますか? Apr 14, 2025 am 12:03 AM

インターネットは単一のオペレーティングシステムに依存していませんが、Linuxはその上で重要な役割を果たしています。 Linuxは、サーバーやネットワークデバイスで広く使用されており、安定性、セキュリティ、スケーラビリティに人気があります。

Linuxでnginxを開始する方法 Linuxでnginxを開始する方法 Apr 14, 2025 pm 12:51 PM

Linuxでnginxを開始する手順:nginxがインストールされているかどうかを確認します。 systemctlを使用して、nginxを開始してnginxサービスを開始します。 SystemCTLを使用して、NGINXがシステムスタートアップでNGINXの自動起動を有効にすることができます。 SystemCTLステータスNGINXを使用して、スタートアップが成功していることを確認します。 Webブラウザのhttp:// localhostにアクセスして、デフォルトのウェルカムページを表示します。

Nginxが開始されるかどうかを確認する方法 Nginxが開始されるかどうかを確認する方法 Apr 14, 2025 pm 01:03 PM

nginxが開始されるかどうかを確認する方法:1。コマンドラインを使用します:SystemCTLステータスnginx(Linux/unix)、netstat -ano | FindStr 80(Windows); 2。ポート80が開いているかどうかを確認します。 3.システムログのnginx起動メッセージを確認します。 4. Nagios、Zabbix、Icingaなどのサードパーティツールを使用します。

nginxサーバーを開始する方法 nginxサーバーを開始する方法 Apr 14, 2025 pm 12:27 PM

NGINXサーバーを起動するには、異なるオペレーティングシステムに従って異なる手順が必要です。Linux/UNIXシステム:NGINXパッケージをインストールします(たとえば、APT-GetまたはYumを使用)。 SystemCtlを使用して、NGINXサービスを開始します(たとえば、Sudo SystemCtl Start NGinx)。 Windowsシステム:Windowsバイナリファイルをダウンロードしてインストールします。 nginx.exe実行可能ファイルを使用してnginxを開始します(たとえば、nginx.exe -c conf \ nginx.conf)。どのオペレーティングシステムを使用しても、サーバーIPにアクセスできます

nginx403を解く方法 nginx403を解く方法 Apr 14, 2025 am 10:33 AM

Nginx 403禁止エラーを修正する方法は?ファイルまたはディレクトリの許可を確認します。 2。HTACCESSファイルを確認します。 3. nginx構成ファイルを確認します。 4。nginxを再起動します。他の考えられる原因には、ファイアウォールルール、Selinux設定、またはアプリケーションの問題が含まれます。

nginx403エラーを解く方法 nginx403エラーを解く方法 Apr 14, 2025 pm 12:54 PM

サーバーには、要求されたリソースにアクセスする許可がなく、NGINX 403エラーが発生します。ソリューションには以下が含まれます。ファイル許可を確認します。 .htaccess構成を確認してください。 nginx構成を確認してください。 SELINUXアクセス許可を構成します。ファイアウォールルールを確認してください。ブラウザの問題、サーバーの障害、その他の可能なエラーなど、他の原因をトラブルシューティングします。

Nginxサーバーのインストールとクイック構成ガイド Nginxサーバーのインストールとクイック構成ガイド Apr 13, 2025 pm 10:18 PM

この記事では、Nginxの構造と構成方法を紹介します。 1. nginxをインストール:centosでsudoyumininstallnginxを使用し、ubuntuでsudoapt-getinstallnginxを使用し、インストール後にsudosystemctlstartnginxから始めます。 2。基本構成:/etc/nginx/nginx.confファイルを変更し、主にサーバーブロックのリスニング(ポート)およびルート(サイトルートディレクトリ)命令を変更し、変更後、sudosystemctlrestartnginxを使用して再起動して有効にします。 3。仮想ホスト構成:ingginx.co

Nginxが起動されているかどうかを確認する方法は? Nginxが起動されているかどうかを確認する方法は? Apr 14, 2025 pm 12:48 PM

Linuxでは、次のコマンドを使用して、nginxが起動されるかどうかを確認します。SystemCTLステータスNGINXコマンド出力に基づいて、「アクティブ:アクティブ(実行)」が表示された場合、NGINXが開始されます。 「アクティブ:非アクティブ(dead)」が表示されると、nginxが停止します。

See all articles