高性能 HTTP サーバーの負荷分散アルゴリズムは何ですか?ほとんどのプログラマーは収集しています...

高性能 HTTP サーバーの負荷分散アルゴリズムは何ですか?ほとんどのプログラマーは収集しています...

典型的な高同時実行性、大規模ユーザー Web インターネット システムのアーキテクチャ設計では、HTTP クラスターの負荷分散設計は、高性能システム最適化リンクに不可欠なソリューションです。 HTTP 負荷分散の本質は、Web ユーザー トラフィックの負荷を分散して軽減することです。したがって、インターネット上のトラフィック量が多いプロジェクトでは、その重要性は明らかです。

一般的に使用されるバランス調整アルゴリズムは何ですか?

主なバランス調整アルゴリズムは次のとおりです。

1) 世論調査戦略

2) 負荷戦略

3) 対応戦略

4) ハッシュ戦略。

[[271838]]

1. 世論調査戦略

ポーリング戦略は、実は非常に簡単に理解できます。ユーザーからのリクエストが届くと、「ロード バランサー」が、そのリクエストをバックエンドのさまざまなビジネス サーバーに順番に転送します。この戦略は DNS ソリューションでよく使用されます。バックエンド サービスのステータスを気にする必要はありません。リクエストがある限り、リクエストは順番にバックエンドに転送されます。非常にシンプルで実用的です。

実際のアプリケーションでは、順次ポーリング、ランダムポーリング、重みによるポーリングなど、さまざまなポーリング方法があります。最初の 2 つは比較的理解しやすいです。3 つ目は重みによるポーリングで、各バックエンド サービスに重み値を設定することを意味します。たとえば、パフォーマンスの高いサーバーには高い重みが与えられ、パフォーマンスの低いサーバーには低い重みが与えられます。この設定により、トラフィックを割り当てるときに、重みの高いサーバーに多くのトラフィックが与えられ、バックエンド マシンのパフォーマンスを十分に発揮できるようになります。

2. ロード戦略

負荷戦略とは、「ロード バランサ」がトラフィックをバックエンドに転送するときに、まず各バックエンド サーバーの負荷圧力を評価することを意味します。負荷が大きいバックエンド サーバーには転送されるリクエストが少なくなり、負荷が小さいバックエンド サーバーには転送されるリクエストが多くなります。

この方法は、バックエンド サーバーの動作状態を完全に組み合わせてトラフィックを動的に割り当てるため、ポーリング方式よりも科学的です。

ただし、この方法には、バックエンド サーバーの負荷圧力を動的に評価する必要があるため、いくつかの欠点もあります。リクエストを転送するだけでなく、この「ロード バランサー」は、接続数、リクエスト数、CPU 負荷指標、IO 負荷指標などを収集するなど、多くの追加作業を行う必要があります。これらの指標を計算して比較することで、どのバックエンド サーバーの負荷圧力が大きいかを判断できます。

したがって、このアプローチはパフォーマンス上の利点をもたらしますが、「ロードバランサ」の実装の難しさとメンテナンスコストも増加します。

3. 対応戦略

応答戦略とは、ユーザーからのリクエストが届いたときに、「ロード バランサー」が、現時点で最も速く応答するバックエンド サーバーにリクエストを優先的に転送することを意味します。

つまり、バックエンド サーバーの負荷がどれだけ高くても、また、バックエンド サーバーがどのように構成されていても、現時点でこのサーバーがユーザーのリクエストに最も速く応答できると判断されれば、リクエストは最初にこのサーバーに転送されます。このようにして、ユーザー エクスペリエンスは最高になります。

では、「ロード バランサー」は、現時点でどのバックエンド サービスが最適な応答能力を持っているかをどのように知るのでしょうか?

これには、「ロード バランサ」が各バックエンド サーバのリクエストの処理速度を、たとえば 1 分ごとに継続的にカウントして、バックエンド サーバの処理速度のランキング リストを生成することが必要です。 「ロード バランサー」は、このランキング リストに基づいてサービスを転送します。

ここで問題となるのは、統計のコストです。これらの統計計算を継続的に実行すると、パフォーマンスが消費され、「ロード バランサー」の実装の難しさとメンテナンス コストが増加します。

4. ハッシュ戦略

ハッシュ戦略も比較的理解しやすいものです。リクエスト内の特定の情報に対してハッシュ計算を実行し、バックエンド サーバーの数に基づいて係数を取って値を取得します。同じ値を持つリクエストは同じバックエンド サーバーに転送されます。

一般的な使用法は、この戦略をユーザーの IP または ID に実装することです。その後、「ロード バランサー」によって、同じ IP ソースまたは同じユーザーが常に同じバックエンド サーバーに送信されるようになります。これは通常、キャッシュ、セッション、およびその他の機能を処理するために使用されます。

<<:  企業向けの優れたビジネス インテリジェンス ツール 10 選

>>:  潜在意識を使うとAIと何ら変わりません

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

AdobeなどがAIを活用しアニメキャラクターのポーズ移行を実現する新タイプの「パペットアニメーション」を提案

人形アニメーションの制作は、クリエイターの手描きに頼るアニメーションと比べると、非常に手間のかかる作...

これはGPT-4が愚かである理由についての新たな説明である

かつては世界で最も強力だと考えられていたGPT-4も、リリース以来、いくつかの「信頼の危機」を経験し...

2023年ゴードン・ベル賞発表:最先端のスーパーコンピューターによる「量子レベルの精度」の材料シミュレーションが受賞

ACM ゴードン・ベル賞は 1987 年に設立され、計算機協会によって授与されます。スーパーコンピュ...

大規模モデルのモデル融合法についてお話しましょう

モデル融合は、特に判別モデルにおいて、これまで頻繁に使用されてきました。これは、常に着実に改善できる...

2022年、ビッグモデルはどこまで行けるでしょうか?

[[442868]]著者: ユン・チャオこの記事は、2021年の業界レビュー、2021年のビッグモ...

機械学習によって IoT アプリケーションのセキュリティはどのように向上するのでしょうか?

モノのインターネットの世界は手の届くところにありますが、それには良い面と悪い面の両方が伴います。機械...

世界動物の日: 動物保護と機械学習が出会うとき

動物を愛し、動物保護に尽力する世界中の人々にとって、今日は特別な日、「世界動物の日」です。毎年10月...

すべてを圧縮するだけです! OpenAIの主任科学者イリヤ・スツケバーが教師なし学習に注目

最近、OpenAI の主任科学者 Ilya Sutskever 氏が、計算理論の研究に重点を置く S...

...

アメリカ心理学会:AIと頻繁に接触する従業員は孤独になりやすく、病気のリスクも高まる

アメリカ心理学会は6月14日、「AIと頻繁に接触する従業員は孤独になりやすく、病気のリスクも高まる」...

AIと機械学習の品質保証

[51CTO.com クイック翻訳]人工知能はここ数年間、人々の注目を集めてきました。 「あなたのた...

さまざまな分野とフレームワーク、これはディープラーニングモデルの超完全なGitHubコレクションです

研究者や開発者は常に GitHub リポジトリで興味深いプロジェクトや実装を検索してきましたが、特定...

シリコンバレーの大手企業のAIスタートアップへの投資レイアウトを解明! Nvidiaが全力で取り組み、MicrosoftとOpenAIの関係が独占禁止法調査につながる

今年、新たな AI スタートアップ企業がシリコンバレーとビジネス界全体に衝撃を与えました。 Open...

スタンフォード HAI が主催: 世界中で 18 の主要な AI イベント

3月18日、李飛飛氏が所長を務める人間中心人工知能研究所(HAI)は、発足からそれほど経たないうちに...

5 つの人工知能プログラミング言語! Javaはまだ立ち上がっています!

新しい AI プロジェクトに取り組んでいて、プログラミングに使用する言語をまだ決めていない場合は、今...