簡體   English   中英

將Azure網站遷移到Azure雲服務

[英]Migrate Azure Web Site to Azure Cloud Service

我有一個項目,我計划將該Web應用程序作為Azure網站啟動,然后將其遷移到Azure雲服務(也稱為托管服務),如果需要將其作為擴展策略。

之所以做出這樣的決定,是因為我讀到Azure網站的開發更加簡單快捷,幾乎沒有特定於Azure的配置或代碼。 因此,快速而簡單的開始是該項目的良好起點。

但是,這對你來說是一個很好的起點嗎? 是否將Azure網站遷移到Azure雲服務,就像將普通ASP.NET網站遷移到Azure雲服務一樣? 您是否會從一開始就使用Azure Cloud Service? 如果是,為什么?

謝謝你的時間。

這兩種部署模型都有好處,它最終會歸結為您要實現的目標,並最終取決於您的應用程序的成功。

下面我概述了每個模型的優缺點,以確保您為應用程序目標做出正確的選擇。

Windows Azure網站

您已正確識別Windows Azure Web站點是應用程序的一個很好的起點,但您也可以認為Web站點確實為許多解決方案提供了足夠的可伸縮性。

優點

  • 預覽期間 10個免費網站 [ 12個月免費 ]
  • 輕松部署(使用Git, TFS ,Web部署或FTP)
  • 快速可擴展性 (您可以移動到您自己的專用集群[又名 保留 標准])
  • 簡單開發(支持經典ASP, ASP.NETNode.js ,Python和PHP
  • 持久的環境(大多數人都習慣了這個)

缺點

  • 自定義域上沒有SSL支持
  • 在預覽中(目前沒有SLA)

Windows Azure雲服務

雲服務(以前稱為托管服務)絕對是Web應用程序未來的願景。 它的構建具有彈性,可以通過擴展來滿足需求,從而保持應用程序的成本,並在流量減慢時回撥容量。

優點

  • 增加對應用程序成本的控制(如果正確構建)
  • 靈活性(您可以完全控制環境)
    • SSL支持
    • 語言不可知論
    • Web服務器不可知(盡管IIS默認可用)
  • 服務器的自動管理

缺點

  • 應仔細考慮架構
  • 部署時間較慢(開發周期較慢)

便攜性需要考慮的事項

上面的項目可能已經足以為您規划應用程序的近期未來,您很可能希望將來考慮使用雲服務(從長遠來看,它更適合多種應用場景)。

以下是幫助網站與雲服務之間可移植性的一系列事項:

  1. 開始思考無國籍

    Windows Azure網站很好,因為它是一個持久的環境,這意味着您可以將會話狀態和資產等內容存儲到磁盤。

    雖然這是一個很好的功能,但如果您的最終目標是雲服務,最好開始規划無狀態應用程序。 以下是您可以開始思考無狀態的一些事情:

    • 不要依賴會話狀態
      • 如果您需要它,請提出一個使其擴展的策略(緩存服務,SQL或存儲)
    • 使用存儲服務
      • 靜態HTML,CSS,javascript和圖像等資產最好放在存儲中
        • 避免在您的網站上增加額外帶寬(可能會延長共享時間以降低成本)
        • 可以啟用CDN,為國際市場提供更好的體驗
        • 將應用程序遷移到雲服務時,更容易更新Web資產
      • 存儲用戶內容
        • 如果您的應用程序已經存儲到Storage Service,那么將來遷移到雲服務時可以減少一個代碼。
  2. 可以輕松發現數據中的模式

    雲服務的好處是它可以通過僅擴展縮放的需求來降低成本。 開始識別您的比例單位的過程,即如何對數據庫或存儲中的表進行分區。

Azure是一個提供應用程序的好地方,但在開始遷移之前,您需要了解一些注意事項。

  • 部署Azure網站和托管服務非常簡單。 使用Visual Studio,您可以生成包並簡單地上傳它。 然后你有一個開發環境來檢查它。 如果它對你沒問題,請交換ips。 如果它不合適,請再次升級。

  • 您的實例有一些可能令人討厭的屬性。 例如,您無法確定您的IP。 然后,如果您的應用程序使用IP限制與某些提供商合作,您將需要弄清楚如何繼續。

  • 更多考慮因素 您的“服務器”可能隨時被重新映像。 如果您在本地光盤上存儲了某些內容,該文件可能隨時消失。

  • 如果每個網站至少有2個或更多實例,Azure的工作非常好。 也許你的應用程序沒有為此做好准備。 第一步是使用appFabri c 管理會話 真的很簡單,只需更改您的網絡配置。 要小心,因為這個會話狀態不像“舊的”那樣完全正常。 您不能存儲不可序列化的對象(應該很容易適應)或非常大的對象(超過8MB)。

如果你要從零開發東西,我建議你從一開始就開始使用azure。 原因很簡單:它開始真的很便宜,在應用程序有很多訪問之前你不會付出很多錢。 設置SQLAzure和存儲帳戶也很便宜。 一個就擁有了,可以輕松添加更多實例或擴展。

例:

想象一下,你有一個想法,並希望向一些可能的投資者展示。

你開始設置一個小的SQLAzure數據庫(1GB),每月9,99美元。

然后你建立一個網站,你又增加了兩個小實例,每月18,72美元。

假設您需要100 GB的空間(圖像,備份......),每月12,50美元。

在他的時候,你已經到位,開始你的業務每月支付不到50美元。

如果您的站點已退出並且訪問開始,則更改小實例的實例(具有額外小實例的生產環境非常危險,因為沒有cpu預留)。 然后你將額外的小額費用(18,71美元)改為57,60美元。 也許你需要更多的SQL Azure空間? 等等...

價格從這里計算: http//www.windowsazure.com/en-us/pricing/calculator/ ?scenario = web

這些是很少的提示,還有很多。 我的建議是開始試用帳戶並玩它。

最后的建議:只需購買更多資源就可以輕松解決所有問題。 有時您需要重構和優化代碼。 如果您只是在每次遇到問題時添加更多資源,那么最終可能會收到巨額賬單和非常混亂的代碼。

希望能幫助到你!

我閱讀了所有帖子,所有帖子都非常有幫助。 除了所有帖子,我在msdn上找到了一個信息: Windows Azure網站,雲服務和虛擬機:何時使用哪個?

使用Windows Azure網站,您可以:

  • 在Windows Azure上構建高度可伸縮的網站。
  • 快速輕松地將站點部署到高度可擴展的雲環境中,使您可以根據需要從小規模開始擴展。
  • 使用您選擇的語言和開源應用程序,然后使用FTP,Git或TFS進行部署,並輕松集成Windows Azure服務,如SQL數據庫,緩存,CDN和存儲。

借助雲服務,您可以:

  • 在Windows Azure上構建或擴展您的企業應用程序。
  • 使用豐富的PaaS環境創建高度可用,可擴展的應用程序和服務。 支持高級多層場景,自動部署和彈性擴展。 為世界各地的客戶提供卓越的SaaS解決方案。

並且還總結了msdn上的選項:

總結有關網站,雲服務和虛擬機的選項

並在msdn上比較Web站點和雲服務的一些功能:

比較網站和雲服務的功能

Windows Azure雲服務通過網站的另一個優點是可以將雲服務添加到Azure虛擬網絡。 這可以使它訪問像數據庫這樣的本地資源。 因此,如果您的要求需要Azure提供的可擴展性,但由於安全限制需要將數據保留在本地,則雲服務是更好的選擇。

Azure網站不能是Azure虛擬網絡的一部分。 要訪問本地資源,必須配置Azure Service Bus Relay等機制。

我們的網站在某些托管上運行PHP,並且在某些時候決定將其移至Azure(其中主要部分是我們的服務)。 我們從Azure Web站點開始,從開發的角度來看這很棒(主要是與git集成)。 但經過大約一周的測試(當我們決定實際移動生產網站時),我們目前已經發現了這一點

  1. 自定義域沒有SSL
  2. 自定義域僅適用於保留實例(無共享基礎結構)
  3. SLA

所以我們搬到了托管服務。 我們的主要問題是缺乏簡單部署的能力(需要構建軟件包並上傳網站的整個軟件包),並且發現解決方案是使用dropbox - 作為角色的啟動任務,我們正在安裝dropbox服務機器,從dropbox獲取所有網站,而dropbox又有SVN簽出文件夾,因此網站更新變得非常容易。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM