2012-05-19 183 views
5

我希望能夠配置Azure負載平衡器仿真器,以便連續調用兩次Web應用程序總是會調用不同的實例。如何驗證Azure負載平衡器?

我怎麼能夠執行該操作? 如何驗證負載平衡器是否按預期工作?使用HttpContext.Current.Request.Url和seing是否端點端口更改?

在此先感謝

回答

9

默認的負載均衡它們提供給您的Windows Azure Web和輔助角色是軟件負載均衡並沒有那麼多的配置但是他們在循環賽的設置工作。如果你想測試這種行爲,這是你需要做什麼:

  1. 創建啓用,因此您可以RDP到兩個實例
  2. RDP到您的這兩種情況下RDP訪問服務的兩個(或更多)實例並在其中運行NETMON或任何網絡監視器解決方案。
  3. 現在從您的桌面訪問您的Windows Azure Web應用程序
  4. 您需要明白,當從桌面進行網絡連接時,連接仍基於網絡設置(默認60秒)仍然有效,因此您需要等到傳遞默認超時以再次訪問您的Windows Azure Web應用程序。
  5. 當您將再次訪問Windows Azure Web應用程序時,您可以驗證該請求轉到下一個實例的秒數。確保傳遞連接超時,否則您的請求將由同一個實例繼續處理。

注意:如果你不想使用RDP,你當然也可以創建一個測試ASP.NET頁面,根據你的具體實例寫一些特殊的代碼,它會告訴你這個頁面是特定於某個實例的。做最好的辦法是閱讀實例ID如下:

int instanceID = RoleEnvironment.CurrentRoleInstance.Id; 

如果你想在Windows Azure的負載平衡,以有更多的控制,我會建議使用Windows Azure流量管理器,這將幫助你路由通過循環,基於性能或基於備份的方案將流量傳輸到您的站點。有關使用Traffis Manager的更多信息,請參閱article

+0

真的很詳細的解釋,謝謝 – ToinoBiclas

+0

我的榮幸。這肯定是一個很好的問題,我一直想記錄如何在我的博客中做到這一點,但至少它記錄在這裏,所以它是好的。 – AvkashChauhan

+1

讓我澄清一下,在負載均衡器中不能指望任何此類算法,也不能指望它是基於硬件還是基於軟件。雖然你今天可能很好地觀察到循環模式,但你不能指望這一點。此外:不應將流量管理器視爲您的角色實例的負載均衡器。它只能通過公共IP端點在不同數據中心之間對同一應用程序的多個部署進行負載平衡。 –