MSDN Library
摺疊目錄
展開目錄

Windows Azure 中的 Visual Studio 負載測試概觀

這裡將描述負載測試的主要元件。如需應用程式架構的一般說明,請參閱使用 Windows Azure 上執行的代理程式進行負載測試 - 第 1 部分。如需 Visual Studio 中負載測試的概觀,請參閱了解負載測試

note附註
這份文件是關於大部分「單純的」解決方案。除了 Visual Studio 的複本以外,負載測試的元件會以 Windows Azure 工作者角色的身分執行。這個「大部分單純的」案例有一個替代方案:如果您在混合式環境中執行或裝載任何元件。例如,您可能會想要與工作者角色上執行的代理程式一起在內部部署環境執行測試控制器。或者,您想要使用 Windows Azure SQL Database 儲存負載測試資料。換句話說,您可以將負載測試的元件散發在 Windows Azure 角色以及內部部署環境的 SQL Database 中。如需有關選取及設定這些替代設定的詳細文件集,請參閱這個主題<在混合式環境中執行負載測試>。

優點

在繼續概觀之前,以下會提供在 Windows Azure 中使用 Visual Studio 負載測試的一些優點。

進入成本
執行負載測試的成本會在初始投資之後大幅降低。您對於 Visual Studio Ultimate 和授權使用負載測試功能的最初成本。之後,您會建立負載測試控管,也就是 Visual Studio 專案。您必須具有 Windows Azure 訂用帳戶以及視需要來部署及執行 Web 和工作者角色的容量。這些成本會與硬體的成本和所有附屬成本之間達成平衡 (附屬成本包括軟體、電力、資料中心以及維護整個系統的人力)。

維護成本
您可以使用這裡的程序,建立輕鬆維護的控管工具進行負載測試。在建立此工具之後,可預見的未來將不太需要更新專案。

彈性
您可以輕鬆修改負載測試來配合不同的情況和條件。例如,您可以使用較大的工作者角色數目來設定 Azure 裝載的伺服器。每個角色都會成為可用於增加負載的測試代理程式。

可重複性
但是在初始投資之後,您可以使用最少的時間和成本來針對各種不同測試主題重新調整負載測試。只需要重新設定測試專案,然後在 Windows Azure 上重新部署它。讓測試執行適當的時間,並重新部署它。視需要重複執行。

真實生活逼真度
當您在大型資料中心裝載服務時,系統的並行存取程度會大幅增加 (稍後對於並行存取會有更多說明)。在 Windows Azure 上裝載最終應用程式會呈現與最終部署之間的完美逼真度。

並行存取

「並行存取」(Concurrency) 定義為系統的一種屬性,也就是幾個工作會同時執行而且可能會有互動。限制並行存取的一個因素為可用 IP 位址的數目。當系統處理的 IP 位址越多,並行處理也會越繁重。一般而言,可用的位址數目取決於您的 IP 提供者的規模。如果您的服務等級合約相當高,通常會配置大量的 IP 位址。但是,這種合約不常見。不過,當您使用 Windows Azure 做為平台時,您會因為使用 Microsoft 資料中心和其資源而獲益。其中包括 IP 位址的大型集區。Windows Azure 中的託管服務會被指派虛擬 IP 位址。在本討論內容中,面向外 (網際網路) 的負載平衡器 (不是託管服務) 會使用 IP 位址。而且擁有大量 IP 位址是 Microsoft 資料中心的優點。也請注意,並非所有系統都需要這個並行存取層級。只有在測試高並行存取系統時,這才是一項優點。

這樣的並行存取容量增加是在 Windows Azure 上執行負載測試的另一大優點。這個並行存取層級也最難在大型資料中心外部重現。

概觀

此圖說明負載測試的元件。Visual Studio Ultimate 的版本是用來設定負載測試以及它的啟動和控制。Visual Studio 也會提供測試結果的圖形檢視。負載測試片段包含測試控制器、測試代理程式及待測系統。測試控制器與代理程式會在 Windows Azure 資料中心當做工作者角色執行。除了待測系統以外,所有的負載測試元件都必須屬於相同的 Windows Azure Connect 群組。如此可讓這些片段自由地彼此通訊,也可與 Visual Studio 執行個體通訊。若要建立計數器集合,在裝載待測系統的電腦上追蹤效能計數器,請將這些電腦加入 Windows Azure Connect 群組。

基本載入測試組態

負載測試會使用一些主要技術。本文稍後將會描述這些技術在負載測試中的功能。如需所需下載項目的完整清單,請參閱<Windows Azure 負載測試必要條件和設定>。

Azure 管理入口網站

管理入口網站是用來建立及管理用於負載測試的主要結構。具體而言,您會使用下列 Azure 功能:

Azure 託管服務
建立 [託管服務] 來執行負載測試應用程式。此應用程式是由兩個工作者角色所組成。第一個角色會裝載「測試控制器」(Test Controller) 的單一執行個體。此控制器會啟用負載測試的遠端執行。第二個角色會裝載單一代理程式。您可以使用 Azure「執行個體」(Instance) 功能建立多個您需要的代理程式角色「執行個體」。如需詳細資訊,請參閱如何經由增加或減少角色執行個體數目來調整應用程式

儲存體帳戶
您需要 Windows Azure 儲存體帳戶來保存在工作者角色上執行的壓縮程式碼。儲存體 blob 包含三個 .zip 檔案。其中一個檔案包含 SQL Express 的設定軟體。第二個檔案包含控制器程式碼。第三個檔案包含代理程式碼。如需有關建立儲存體帳戶的詳細資訊,請參閱如何建立 Windows Azure 訂用帳戶的儲存體帳戶

Connect 群組
若要啟用控制器與代理程式之間的通訊,請建立 Connect 群組。Connect 功能會當做允許控制器執行代理程式活動的虛擬私人網路來運作,它也可讓代理程式將測試結果傳回控制器。Connect 群組也可讓您從 Visual Studio 的內部部署複本執行控制器。如需詳細資訊,請參閱 Windows Azure Connect 的概觀

此外,將兩個 X.509 憑證上傳到 Azure 入口網站。需要這兩個憑證,才能在您的內部部署電腦與 Azure 入口網站之間驗證及加密資料流。第一個憑證用於啟用從 Visual Studio 將應用程式直接 [發行] 到 Azure。該憑證在 Azure 說法中稱為「管理憑證」(Management Certificate)。第二個憑證用於啟用內部部署電腦與 Azure 工作者角色之間的遠端桌面連接。該憑證在 Azure 詞彙中稱為「服務憑證」(Service Certificate)。

Visual Studio Ultimate

Visual Studio 是開發環境,而且是唯一提供負載測試功能的版本。如需 Visual Studio 版本的比較,請參閱 Visual Studio 2010 比較。您可以使用 Visual Studio Ultimate 建立測試指令碼,為您的應用程式進行負載測試。

Visual Studio 也有在遠端管理控制器的功能。在非 Azure 情況下,遠端控制器將會在第二部電腦上執行。在 Azure 案例中,控制器會在雲端的工作者角色內執行。

SQL Server 2012 Express Edition

從代理程式收集和儲存資料需要資料庫。幸運的是,SQL Server 2012 Express 是免費版本,而且負載測試程式預設會使用它。唯一需要的條件是資料庫引擎也部署在同時執行控制器軟體的工作者角色中。安裝程式會使用 RoleEntryPoint.OnStart 方法中的程式碼來完成。

SQL 資料檔不得位於工作者角色的虛擬硬碟中,因為當回收角色時,資料會遺失。建議作法是針對所有要寫入的角色裝載共用磁碟機。您可在使用 SMB 在多個角色之間共用 Windows Azure 磁碟機中找到詳細資料。

另一個替代方法是使用 SQL Database。下載 loadtest2010.dacpac 檔案,使用資料庫來佈建 SQL Database。如需詳細資訊,請參閱<在混合式環境中執行負載測試>。

組合您需要的片段

若要開始作業,請下載佈建 Azure 入口網站及設定應用程式所需的軟體。您可以在這個主題中找到有關下載的詳細資料:<Windows Azure 負載測試必要條件和設定>。

佈建 Windows Azure 及設定應用程式

一旦您下載所有額外的軟體之後,您就可以佈建 Windows Azure 入口網站,並依照稍後的概述內容來設定應用程式。您可在<為負載測試佈建 Windows Azure>中找到完成每個步驟的詳細資料。

  1. 使用新的託管服務、儲存體帳戶和 Connect 虛擬網路佈建 Windows Azure 入口網站。

  2. 在建立儲存體及託管服務帳戶之後,請使用 Windows Azure 入口網站的值來設定應用程式。

  3. 建立包含軟體的三個 .zip 檔案,此軟體會自動安裝在工作者角色上。

    應用程式同時需要控制器和代理程式軟體,才能在工作者角色上執行。建立控制器和代理程式的軟體會預先建立,而且可供您下載。將軟體放置在工作者角色上需要一項技術:首先建立包含測試控制器和代理程式軟體的兩個 .zip 檔案。使用您選擇的工具 (含有可用版本) 建立 .zip 檔案。一旦建立 .zip 檔案之後,請將檔案上傳至您的 Windows Azure 儲存體帳戶。當應用程式執行時,便會從儲存體擷取這些 .zip 檔案,並將其解除封裝及載入工作者角色上。

    您必須建立第三個 .zip 檔案:包含 SQL Server 2008 SQL Express 安裝套件的檔案。就如同控制器和代理程式套件一樣,SQL Server 安裝程式會自動在工作者角色上執行及部署 SQL Express 執行個體。

  4. 將 .zip 檔案上傳到 Azure 儲存體帳戶。在這項工作中,請使用儲存體服務用戶端,這是您可以下載的免費專案。

  5. 在 Windows Azure 入口網站建立 Windows Azure Connect 群組。

  6. 將 Connect 端點安裝到用於連接至控制器角色的電腦上。

  7. 使用 Connect 啟用 Token 設定應用程式。此 Token 可讓工作者角色參與 Connect 群組。

發行應用程式

一旦入口網站和應用程式正確佈建及設定之後,您可以將應用程式發行到 Windows Azure。您可在<將負載測試發行到 Windows Azure>中找到詳細步驟。

  1. 擷取 Windows Azure 訂用帳戶 ID。此 ID 是用來讓 Visual Studio 將應用程式上傳至您的帳戶。

  2. 建立和上傳管理憑證。此程序如下所示。

    1. 使用 [發行 Windows Azure] 對話方塊,並建立新的管理憑證。此憑證可讓 Windows Azure 授權您何時上傳應用程式。

    2. 將訂用帳戶 ID 貼到對話方塊中。此 ID 可讓 Visual Studio 識別您的帳戶。

  3. 匯出管理憑證。若要上傳憑證,請從電腦的本機憑證快取將它匯出。

  4. 上傳管理憑證。使用管理入口網站上傳憑證。

  5. 發行應用程式。

使用遠端桌面

一旦發行應用程式之後,您便可使用遠端桌面連接它。Visual Studio 會提供啟用這項功能的工具和功能。您可在<將負載測試發行到 Windows Azure>中找到啟用遠端桌面連接的步驟。

後續步驟

若要開始進行,請下載此方案的工具和元件:<Windows Azure 負載測試必要條件和設定>。


建置日期:

2013-07-25

社群新增項目

顯示:
© 2016 Microsoft