共用方式為


Windows Azure:認識執行階段環境

有 ’s 很多来學習開發新的平台,例如 Windows Azure 的應用程式。 這裡 ’s 逐步的故事的一個開發人員 ’s 經驗。

王 Barreto

我最近學到如何開發、 測試和部署 Windows Azure 應用程式。 我有很多聽 Windows Azure 並看到許多人,報告的經驗,但是我想要取得自己的實務經驗,並驗證什麼我被告知。 Visual Studio 2010 發行了我開始時所需的最終發送。

在本文中,我將說明我如何建立及部署範例應用程式。 這一定是不錯的方法,以取得新的科技 wet 方向盤及它強制我遇到的應用程式在 Windows Azure 在整個生命週期。

我的實驗進行更容易由於我先前已開發 ASP.NET 的應用程式因為 Windows Azure 應用程式遵循相同架構與 Web 角色 (Web 前端) 和背景工作角色 (後端服務)。 主要的工具,以開發 Windows Azure 應用程式和一般的 ASP.NET 應用程式也是一樣:Visual Studio。 我我 Windows 7 電腦上已經有安裝 Visual Studio 2010 最終版本,也必須為選擇性的 Windows 7 元件加入 IIS。

除了 Visual Studio 2010] 和 [IIS 我也會下載加入 Windows Azure 開發額外的範本的 [Windows Azure] 工具。 我是想要瞭解更多關於 Windows Azure 應用程式執行位置的環境。 我的一般知道這些是虛擬機器,它們應該使用適用於您的應用程式,不論它們的特定組態詳細資料,但我已好奇 Windows Azure 如何部署它們。 有人使用一些 IT 基礎結構的背景為我 ’m 永遠有興趣瞭解這種部署封面] 下的外觀。

若要前往該處,我決定寫應用程式會報告它執行之電腦的檔案系統有關的資訊 — 例如存在哪些磁碟機和它們的特性是 ([型別]、 [檔案系統]、 [總大小及 [可用空間]) 的簡單項目。 我也新增功能到查詢資料夾和檔案,讓我可以了解什麼存在位置。 圖 1 顯示什麼我往上以結束。

Figure 1 A sample file system report application created in Windows Azure.

圖 1 A 範例檔案系統報告應用程式,建立在 Windows Azure。

沒有任何花俏,您可以告訴就足夠了解開發經驗,進行部署程序,且可了解 Windows Azure 執行階段環境工具。

C# 的 [雲霧

建立應用程式是相當簡單的。 我建立新的專案使用 C#,並選取定域機組的專案。 若要保留簡單,我需要將單一的 ASP.NET 網頁角色用於我雲霧服務專案。

然後我拖曳某些控制項,加入一些程式碼並啟動測試它。 在整個開發程序會執行本機,所以有 ’s 甚至有 Windows Azure 帳戶此時不需要。 我也不使用任何 Windows] Azure 存放,它只是一網頁有沒有外部相依性的角色。 通常不是很有幫助應用,但我在我的目標是要建立稍微一個 glorified 「 Hello,世界 」 開始。

因為我有整個 Microsoft.NET Framework 可用,撰寫的程式碼不是硬式根本。 若要磁碟機資訊對於執行個體我用 的 System.IO 命名空間

protected void btnDrives_Click(object sender, EventArgs e)
 {
   DriveInfo[] diAll = DriveInfo.GetDrives();
   string strDrive = "";
   foreach (DriveInfo diOne in diAll)
    {
       strDrive = "Drive " + diOne.Name + " Type:" + diOne.DriveType.ToString();
      if (diOne.IsReady)
       {
          strDrive = strDrive + " Volume:" + diOne.VolumeLabel + " FS:" + diOne.DriveFormat.ToString() + " Total:" + diOne.TotalSize.ToString() + " Free:" + diOne.AvailableFreeSpace.ToString();
       }
       txtAdd(strDrive);
    }
 }

除了從事實,我必須以系統管理員身分執行 Visual Studio 其餘的項目是相當 uneventful 方面開發和本機偵錯應用程式。 當我在我的應用程式執行時,Visual Studio 會自動啟動本機 Windows Azure 模擬環境 (請參閱 的 圖 2)。 我已能夠設定中斷點、 監看及 [逐步執行我的程式碼。 那里沒有驚喜。

Figure 2 Here’s how my application looked when it ran through the Windows Azure Simulation Environment.

圖 2 這裡 ’s 我的應用程式看起來時執行透過 Windows Azure 模擬環境。

部署 Azure 應用程式

也許我被新增至 Windows Azure,最困難的部分知道完全什麼我必須將我的應用程式部署。 一旦您建立您的服務在 Windows Azure 網路使用者介面時,會到達的點,您可以在此部署的應用程式。

按一下 [部署] 按鈕時您會再提示您提供兩個檔案 (應用程式封裝檔和組態設定檔),以及與服務部署名稱。 有了一些其他方面如何產生這些秘訣。

我找不到正確的方法來建立這些檔案,或甚至何種副檔名會是之後花一些時間,在 Visual Studio 環境的情況。 那就是當我必須查閱 Windows Azure 文件,第一次。 這個的時間點到我只要 winging 它。 其實您需要尋找 「 發佈 … 」 選項,以產生封裝的 Windows Azure 雲霧專案上按一下滑鼠右鍵。

這會建立兩個必要的檔案值,一個雲霧服務套件 (.cspkg) 和一個雲霧服務組態 (.cscfg)。 「 發佈 … 」 選項開啟 Windows 檔案總管] 視窗,以正確的資料夾 (請參閱 的 圖 3),以及具有正確的 Windows Azure URL 的 Internet Explorer 視窗。

Figure 3 The Windows Explorer window opened from the “Publish-…” option.

圖 3 [Windows 檔案總管] 視窗開啟從 「 發佈 … 」 選項。

一旦我所提供的所有項目,在數秒內發佈的服務。 之後,按一下 「 執行 」 上部署應用程式。 ’s 何時在虛擬機器 (VM) 包含正在執行的應用程式實際上會變成佈建和啟動。 該步驟花幾分鐘的時間。

執行服務

服務的狀態發生 「 初始化 」 從 「 忙碌 」 到 「 就緒 」。之後,已完成部署,並執行該服務是直接攻擊的網站 URL,在 http://servicename.cloudapp。 網路。

我已檢查的某些特性執行我服務的 Windows Azure VM 的最後準備。 第一次,我會列出系統上的磁碟機。 它顯示 VM 有三個磁碟機 (C:、 D:和 E:當我會示範 的 圖 1。 我接著會用來查詢到特定的資料夾,並在每個磁碟機上的檔案的應用程式。 進一步調查後我是以三種不同磁碟機, 的 [圖 4] 所示的相關的結論。

圖 4 這裡 ’s 如何儲存區已剖析出 超過三個磁碟機。

我發現有 文件 屬於可以指定每個 VM 的儲存數量。 (小型) 的預設大小為您提供 250 GB 的本機存放區。 這是 VM 的我的大小。 您可以選擇較大的 500 GB、 1000GB 與 2000GB 的本機存放區。

但是,我並不尋找文件,這三個磁碟機之間的分解 (也期間甚至三個] 磁碟機有關的任何文件)。 我可以只告訴您在 的 圖 4 的數字是在那段時間我特定的應用程式部署,則為 True。

如果您計劃使用本機的暫時儲存在應用程式中,您應該仔細研究 t 本機存放裝置資源的他文件 。 這些本機存放裝置資源顯然住在 C:磁碟機,但您應該使用 API 來找出確切的本機路徑,以使用。

如果您需要永久儲存,您應該仔細研究許多選項 Windows 包括 Blob]、 [資料表]、 [佇列]、 [Drivesand SQL Azure 資料庫的 Azure 優惠。 這些存取透過 API,並不會儲存您的 Windows Azure VM 區域儲存區的一部分。

執行基本功能

我發現有趣的一個最後一個項目已部署的應用程式的其他版本的程序。 Windows Azure 可讓您放置在不同的 「 執行 」 區域中的新版本。 這樣可以執行並測試新的分段的版本與暫存的 URL 與主要的 URL 的較舊的版本仍在執行時。

有信心的版本是正常時,您可以只會切換生產和接移環境。 因為這兩個環境完全部署點,而且您可以有效地只切換兩個 URL,這是快速,完成。 如果您的新版本都變成有任何問題,您可以也快速切換回至舊的版本。

在雲霧的封裝

如果您 ’re 熟悉 ASP.NET,建立 Windows Azure 應用程式不是一個大的縮放一旦瞭解一些額外的概念。 我很多學習關於封裝及也了解更詳細的部署步驟中的 Windows Azure 應用程式的方式。

我已快樂與我項實驗不必部署我的第一個 Windows Azure 應用程式及學到更多關於 Windows Azure 執行階段程序中。  我了解更多關於 Windows Azure VM 所用不同的磁碟機,並且已經了解更詳細的 VM 部署的詳細資料。 您必須瞭解這些詳細資料,來部署您的應用程式,但開發人員永遠都是不瞭解更多有關什麼 ’s 內後更舒適。

Jose Barreto Photo

王 Barreto是以檔案伺服器小組部分 Microsoft 伺服器及雲霧部門的主體程式管理員。 他在 Universidade 聯邦執行巴西的 Ceara 1989 中的漸層中的電腦科學和 2000年中移到美國。 Barreto 加入 Microsoft 2002 中,排除加州,並移至里德蒙校園 2007年中。

相關內容