2012-05-09 8 views

答えて

6

私はあなたがどこ(どのOSI層)、それらの間の差がある

これは非常に強力な議論かもしれないし、とにかくそれがプログラミングに関連していないと思いますけど...バランスを取る。私の意見では、は決してでなければなりません。層7だけでバランスをとってください。

なぜですか?あなたはそれのための特別なハードウェアを必要としないため、レイヤ7ロードバランシングは、それは、アプリケーションレベルで行うのは良いですが、あなたは、多くの他の多くの欠点でこれを支払う:

  • パフォーマンスはあまり良くありません:ロードバランサはする必要がありますクッキーとセッション(必要な場合)を追跡してください。これにより、より強力なハードウェアが必要になります。適切な方法は、アプリケーションがこれを適切に管理できるようにすることです。これを無効にするには、より強力なハードウェアが必要です。
  • 負荷はサーバー間で分散されますが、が真であることは容易ではありません負荷のバランスをとります。非常に頻繁にDNSサーバーに注入されたものであり、サーバーがどれだけビジーであるかについての真の知識はありません(ラウンドロビンは集中的に1つを割り当て、最高のサーバである軽量(同じサーバに軽量を割り当てる場合)
  • これらはスケーラビリティがなく(アプリケーションで管理する必要があるものを管理する必要があります)、多くのリソースを浪費します。

なぜ優れているのですか?スケーラビリティの高いアプリケーションにパッチを適用するための迅速で簡単で汚いソリューションです(ASP.NETアプリケーションのバランシングはそれ自体でスケーラビリティが必要です)。これらは、解決策ではなく、偶発的な問題に対する一時的な解決策になる可能性があります。現実の世界では、レイヤ4のロードバランシングが推奨されます(また、レイヤ7のバランシングと混在することもあります(例:Googleでは第1レベルのラウンドロビンDNS負荷分散を使用します)。

負荷分散については、この非常に良い記事を読む:(レイヤ7ロードバランシングの利点について)私はおかしい見つけhttp://1wt.eu/articles/2006_lb/index.html

何か、here彼らは言う:

ユースケースはまだかなり限られているもののレイヤ7ロードバランシングのこの機能は、将来の使用のために多くの可能性を開くことになります。このテクノロジが進化するにつれて、追加のトラフィックのタイプをよりインテリジェントにバランスさせる機能が得られます。

(これらの利点の)ユースケースは、「まだかなり限ら」であり、私たちは、「この技術として進化する」ことを待つ必要があれば、私はにNOW任意の負荷をベースにする何らかの理由が表示されませんレイヤー7でのバランスのとれたソリューションです(さらに、将来的にはいつでも追加するのが簡単です)。

3

レイヤ4ロードバランサは、ネットワークおよびトランスポートレイヤプロトコル(IP、TCP、FTP、UDP)にあるデータに基づいて動作します。

レイヤ7ロードバランサは、HTTPなどのアプリケーションレイヤプロトコルで検出されたデータに基づいて要求を配信します。 HTTPヘッダー、Cookie、またはhttpの特定のパラメーター内のデータなどの特定のデータに基づいて要求を分散することもできます。

Soレイヤ4ロードバランサはtcpロードバランサですが、レイヤ7ロードバランサはhttpロードバランサです。

関連する問題