Windows system >> Windowsの知識 >  >> Windows 7システムチュートリアル >> Win7システムの基本 >> 7層のソフトロードの経験共有を行うためのWindows 7(1)

7層のソフトロードの経験共有を行うためのWindows 7(1)

  
この記事では、Windowsの下で7層のソフトロードの分析を行うことを紹介します。あなたはこの作品の負荷に興味があります。実際、いわゆる4層はIP +ポートに基づく負荷分散であり、7層はURLなどのアプリケーション層情報に基づく負荷分散であり、7層には浅い印象を与えているので、誰もが7層のソフトロードを行う経験があります。それを共有し、もちろん、それはWindowsプラットフォームの下で最善です。カーネルレベルで
パフォーマンス分析
ページ1、分析に使用される接続管理と外部ネットワーク・プロトコルのHTTP.sys(HttpApi.dll、HttpListenerを)組み込みの機構、HTTP.sysはHTTP接続管理とプロトコルの解決、パフォーマンスは保証されるべきです。

2、RealServerの内部ネットワーク接続の管理と組み込みのメカニズムHttpWebRequestの戦いのパックを使用しますが、問題

a)の接続マネージャがあります:RealServerのにデフォルトのプロキシは、新しい接続を確立するための要求を送信するには、応答を受信した後、接続は削除されます。つまり、ProxyとRealServerの間に多数の接続が確立されることになりますが、ポートの制限(65535)のため、発信接続が多すぎることはありません。この問題を解決するには、RealAliveがRealServerを解決できるようにします。で
B)戦いパッケージ:HttpListenerを、パケットの受信後しばらく自動的にオブジェクトに解析されているだけでなく、ウリ、HttpHeader、クッキーのコピーを含むRealServerのHttpWebRequestのフォーマットに送らこれらのパケットに自分自身を再形成するために、本体など、データ量がかなり多いため、一定の損失性能のためにメモリをメモリにコピーします。この問題は避けられないはずです。

3、従来のWebアプリケーション(リソースアクセスクラス)であれば、偉大な小さな、レスポンスを要求するだけでなく、プロキシを介して、だけでなく、メモリコピーのRealServerがレスポンスを返し、これも非常に影響を与えるパフォーマンスです。その場合、レイヤ7はLVSのDirectRouteメカニズムを使用できず(ネットワークパケットのMacアドレスを変更する必要があります)、IPトンネルおよびTCPの状態遷移はオペレーティングシステムのTCP /IPプロトコルスタックを変更する必要があります。コストを考えると、問題は回避されません。要求に対応する要求を送信した後、応答を受信するために次の後までであるがそこHTTP1.1

4は、http契約要求および応答は、アウト送信のデフォルト要求に接続、ペアリングされなければなりませんパイプライン関数は、最初に応答を待たずに要求をまとめて送信することができますが、POSTがパイプラインを使用してはならないなどの制限もあります。要求がバッチで送信された後、接続が切断された場合、複数の要求が失敗するなどとなります。 HTTPプロトコルは、SIPプロトコルのようにCallIDとCseqによるリクエストとレスポンスが一致しないため、リクエストとレスポンスを非同期で送受信できるため、Httpプロトコルスタックを実装すると、レスポンスは同期して待機し、次のリクエストを接続で送信できます。これは必然的にパフォーマンスに影響を与えます。

5は、非同期送受信要求がそれによってGCの圧力を増加させること、頻繁に呼び出されるときに非同期モードと破壊IAsyncRequestオブジェクトの多数を生成正常応答HttpListenerをAPMモード(BeginXXX、EndXXXフォーマット)でありますそしてIAsyncRequestオブジェクトはまだカスタムプールインターフェースを提供していません。 HttpListenerが新しいイベントベースの非同期モード(XXXAsync(eventargs)モード、Socket.ReceiveAsyncメソッドを参照)を提供するようにすれば、この問題は解決します。

6、添加は要求を受信し、HttpLisenter純ラッパークラス、ユーザモードで実行、カーネルモードとHTTP.SYSが実行されているために、応答は、2つのユーザーモードとカーネルモードの間であろう返しますカーネル状態で7層の転送を直接実行できる場合は、切り替えによってパフォーマンスが低下します。LVS(KTCPVS)を使用すると、Linuxでカーネルベースのコンテンツベースの7層転送を実行でき、WindowsでTDIまたはNDIS開発を行う必要があります。いくつかの情報をチェックするのは複雑すぎるので、最初にそれについては考えません。信頼性分析で
は、災害復旧のために、

1.7層は、レイヤ4負荷装置、負荷複数のソフト層7を持って次のプログラムは、ソフトフロントをロード検討し、信頼性を向上させますすべての7層ソフトロードマシンがすべての要求を正しく処理できるように、4層デバイスはセッションに従ってランダムロードを実行し、ハッシュポリシーを共有します。7層ソフトロードが停止した後、残りの7層はソフトです。 4層ロードはキープアライブ機能を備えているため、どの7層ソフトロードがダウンしているかを検出でき、要求を転送しません。

2.7ダブルレイヤーソフトの負荷は、プライマリサーバがダウンした場合、プライマリサーバは、要求を処理し、通常でホットスタンバイ、ソフト層7負荷外部ネットワークへの直接アクセス、メインで取得したバックアップサーバの発見、ARPスプーフィングを行いますサーバの元のIPアドレスがバックアップサーバへの要求を引き付けるために使用され(サポートされている場合、ハードウェアはプライマリマシンとバックアップマシン間のMacアドレスの共有をサポートします)、アクティブ/スタンバイ切り替えが発生すると短時間の要求は失敗します。

は、2番目のオプションは、最初のオプションを優先して、いくつかのコテージや保険ではありません、まとめます。
Copyright © Windowsの知識 All Rights Reserved