2017-02-27 105 views
0

我有一個NserviceBus處理程序,通常作爲服務安裝在VM上。我們正試圖讓這個在Azure上成爲PAAS。因此,我們的想法是將解決方案發布爲天藍色的webjob。當我將它作爲網絡工作發佈時,我正在獲得一個未決的開始狀態。日誌顯示如下。發佈Windows服務作爲AZURE WEBJOB

[02/27/2017 09:35:10 > 2cf107: SYS INFO] Run script 'ENSource.Handlers.exe' with script host - 'WindowsScriptHost' 
[02/27/2017 09:35:10 > 2cf107: SYS INFO] Status changed to Running 
[02/27/2017 09:35:10 > 2cf107: INFO] Cannot start service from the command line or a debugger. A Windows Service must first be installed (using installutil.exe) and then started with the ServerExplorer, Windows Services Administrative tool or the NET START command. 
[02/27/2017 09:35:10 > 2cf107: SYS INFO] Status changed to Success 
[02/27/2017 09:35:10 > 2cf107: SYS INFO] Process went down, waiting for 60 seconds 
[02/27/2017 09:35:10 > 2cf107: SYS INFO] Status changed to PendingRestart 

我錯過了什麼?如何讓NServiceBus處理程序在Azure上作爲WebJobs工作?

回答

0

我只想重寫服務,使其不再是一個Windows服務,但一個控制檯應用程序。然後,您可以將WebJob主機告訴run it on a schedule(或者,如果這對您的方案更有意義,則可以通過利用WebJobs SDK使其繼續)。

的替代方法,如已經提到Thiago,是安裝Windows服務中的雲服務工作者角色: https://blogs.msdn.microsoft.com/golive/2011/02/11/installing-a-windows-service-in-a-windows-azure-worker-role/

不完全是直截了當地做,但並不可怕任。

+0

將項目重寫爲Azure WebJob。這個問題現在不會發生。 –

0

它不會與Azure的網絡招聘工作,你可以嘗試使用提升的權限運行它的雲服務,但我不知道這是否會給你安裝它作爲Windows服務的特權。所以恐怕沒有其他辦法,而不是使用虛擬機。如果你想要一個PaaS替代品,你可以嘗試使用Azure Service Bus重寫你的這款應用。