1

我有一个 NserviceBus 处理程序,通常作为服务安装在 VM 上。我们正试图让它在 Azure 上作为 PAAS 工作。因此,想法是将解决方案发布为 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 工作?

4

2 回答 2

2

我只想重写服务,使其不再是 Windows 服务,而是控制台应用程序。然后,您可以告诉 WebJob 主机按计划运行它(或者如果这对您的方案更有意义,则可以通过利用WebJobs SDK使其连续运行)。

正如Thiago已经提到的,另一种方法是将 Windows 服务安装在云服务上的 Worker 角色中: https ://blogs.msdn.microsoft.com/golive/2011/02/11/installing-a-windows-服务-a-windows-azure-worker-role/

不完全直截了当,但也不可怕。

于 2017-02-27T10:36:50.780 回答
0

它不适用于 Azure Web Jobs,您可以尝试将其作为具有提升权限的云服务运行,但我不确定它是否会授予您将其安装为 Windows 服务的权限。所以恐怕除了使用虚拟机之外别无他法。如果你想要一个 PaaS 替代方案,你可以尝试使用 Azure 服务总线重写你的这部分应用程序。

于 2017-02-27T10:14:47.373 回答