3

1 つのアプリ サービス プラン3 つの個別の Web サイトをホストしています。このプランは、3 つのスモール インスタンス (S1)を実行するように構成されています。これは、それぞれ 1 つの CPU を備えた 3 つの個別のサーバーを意味すると理解しています。

3 つの Web サイトのうち 1 つだけが単一のソース (別のオフサイト サーバー) からの非常に高いトラフィックを経験している場合、3 つのインスタンス間で負荷がどのように分散されますか?

すべてのリクエストがラウンド ロビンに送られますか、それともすべてが 1 つのインスタンスに送られますか? これを制御またはテストするにはどうすればよいですか?

他のサイトがある場合、単一の Web サイトは、単一のインスタンスで利用可能なリソースの一部/部分に制限されていますか?

複数の単一 CPU インスタンスを実行することと、Azure Web サイトで複数の CPU を持つ単一インスタンスを実行することの利点は何ですか? (空室状況以外)

サイトの 1 つで負荷テストを試みましたが、1 つのサイトのみをスラミングし、他の 2 つのサイトにトラフィックがない場合、CPU の 10 ~ 15% 以上を使用することはないようです。これが、ロードバランスを疑うようになった理由です。

4

1 に答える 1

6

最初の段落は正しいです。サイトには 3 つの S1 サーバーが割り当てられます。

各サーバーは 3 つのサイトすべてをホストします。どのサイトへのリクエストも、任意のサーバーにランダムにルーティングされます。

ただし、デフォルトではスティッキー セッションが有効になっているため、1 つのクライアントが常に同じサイトの同じサーバーにヒットします。そのため、1 つのクライアントが実際にサイトを攻撃している場合、すべての負荷が 1 つのサーバーに集中します。

この動作を無効にするには、サイトの ARR のインスタント アフィニティを無効にします。これを行うには、web.config ファイルでカスタム ヘッダー Arr-Disable-Session-Affinity = false を設定します。

詳細な手順はこちら: https://azure.microsoft.com/blog/2013/11/18/disabling-arrs-instance-affinity-in-windows-azure-web-sites/

于 2015-08-20T00:59:49.853 に答える