2013-12-12 24 views
3

我們開發了一個窗口服務,用於處理Azure隊列以及添加/更新/刪除數據庫記錄[僅與數據庫相關的實現]。在沒有VM的Azure上運行窗口服務是否有其他選擇?

當前實現[運行良好,並沒有任何問題]:

創建部署到Azure上的VM

,我們正在試圖找出更好的替代品,有助於部署我們的業務實現[窗口服務 目前封裝爲Windows服務]到Azure網站和/或Azure雲服務。

一種可能的替代方案:

  1. 創建ASP.NET MVC網站
  2. 創建3個操作

    一個。開始[啓動靜態定時器]

    b。停止[停止靜態定時器]

    c。執行[在計時器已完成時通過WebRequest調用]

  3. 在Azure網站上部署該站點。

1)您是否曾在Cloud [Azure/Amazon或其他]上實施過上述替代方案?

2)如果是,想知道面臨的問題及其解決方法/解決方案。

3)有更好的選擇嗎?

4)Window Service是當前場景中的最佳解決方案嗎?

回答

2

那麼,NT服務是做什麼的?它從系統啓動開始,運行某種無限循環來「聆聽」某些內容或處理某些知道從哪裏獲取的內容。

輔助角色(與Web角色太 - 那些實際上是與IIS工作者角色)做一樣的 - Azure的基礎設施開始他們(和重新啓動,如果他們失敗),那麼RoleEntryPoint.OnStart()調用初始化,然後RoleEntryPoint.Run()被調用,後者應該永遠睡眠或者運行一個無限循環。基本上它和NT服務是一樣的,區別在於NT服務綁定到特定的機器,而worker/web角色綁定到「部署」 - 執行代碼和該代碼設置的組合。

1

使用工作角色,服務總線和雲服務。這是一個更強大的實現,並提供您所需要的API。檢查this article

相關問題