【发布时间】:2016-08-24 11:48:03
【问题描述】:
我开发了一个 Windows 服务。我需要将它部署在 Azure App Service 中。请有人解释我如何做到这一点。有没有办法在控制台或任何其他选项上安装它。
【问题讨论】:
标签: azure windows-services azure-web-app-service
我开发了一个 Windows 服务。我需要将它部署在 Azure App Service 中。请有人解释我如何做到这一点。有没有办法在控制台或任何其他选项上安装它。
【问题讨论】:
标签: azure windows-services azure-web-app-service
您无法使用应用服务部署 Windows 服务。一种选择是将您的代码转换为Web Job。另一种选择是使用虚拟机而不是应用服务。
【讨论】:
Azure App Service 是应该用于 Web/Mobile 的服务,基本上是 web-server-as-a-service。您几乎无法访问底层系统,并且像工作 Windows 服务这样的系统范围的操作可能是不可能的。
我看到了三种方式:
1) 迁移到 Worker Role,但它是经典模型。关于如何做到这一点有一个good article,我看了看,没有发现任何潜在的问题。这是更简单的方法。
2) 将您的 Windows 服务迁移到 Web Job 并将其作为后台服务运行。我认为,它需要您重写服务的某些部分——但有开箱即用的受支持的可执行格式。 Take a look at how it works.
3) 看看Azure Functions - 它是“触发和调用”服务,可用于侦听事件和执行操作。
但是,如果您需要从 DB 捕获一些事件,那么我不确定这是否可行,因为 Web Job 更像是一个侦听外部事件的服务,而您的场景看起来像您想要从同一服务器捕获事件。那样的话,我建议你把它放在虚拟机上,以避免重写或迁移耗时的问题。
【讨论】: