如何在Azure上拥有始终运行的进程?在Windows上,它是Windows服务,但我是否必须获得一个虚拟机才能拥有一个运行的进程?我查看了各种计算选项,但似乎没有一个选项与Windows服务的功能相匹配。是否有其他方法可以在Azure上实现Windows服务的功能?
4uqofj5v1#
在Azure中运行代码没有特定的方法。您有很多选择,选择哪一种完全取决于您(也是一个观点问题)。但是,客观地说:
我看到@Neil在他的回答中建议使用Service Fabric,这也是可行的,只是你需要学习Service Fabric的一般知识,因为它的工作原理有点不同。
f5emj3cl2#
您应该查看持续运行的Web作业。请参阅在Microsoft Azure上使用WebJobs运行后台任务。其他选择是PaaS云服务工作者角色和Azure Service Fabric可靠服务-但如果您只想要基本服务,这些可能会大材小用。
erhoui1w3#
Azure功能是将Windows服务迁移到基于云的服务中的一个很好的候选者。Azure功能可以由定时器触发,因此就像Windows服务一样,可以在一天中的某个时间进行调度。请阅读我在进行此类迁移时所写的笔记:https://dumanhilltechnologies.com/blog/windows-service-migration-to-azure-function/
更新以上链接不再可用,因此请在此处参阅Microsoft关于计时器触发Azure功能的文档https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-timer?tabs=in-process&pivots=programming-language-csharp
net核心中的其他选项是编写一个BackgroundService并使用Azure应用服务或使用Azure容器服务将其托管在容器示例中。
3条答案
按热度按时间4uqofj5v1#
在Azure中运行代码没有特定的方法。您有很多选择,选择哪一种完全取决于您(也是一个观点问题)。但是,客观地说:
我看到@Neil在他的回答中建议使用Service Fabric,这也是可行的,只是你需要学习Service Fabric的一般知识,因为它的工作原理有点不同。
f5emj3cl2#
您应该查看持续运行的Web作业。请参阅在Microsoft Azure上使用WebJobs运行后台任务。
其他选择是PaaS云服务工作者角色和Azure Service Fabric可靠服务-但如果您只想要基本服务,这些可能会大材小用。
erhoui1w3#
Azure功能是将Windows服务迁移到基于云的服务中的一个很好的候选者。Azure功能可以由定时器触发,因此就像Windows服务一样,可以在一天中的某个时间进行调度。
请阅读我在进行此类迁移时所写的笔记:https://dumanhilltechnologies.com/blog/windows-service-migration-to-azure-function/
更新以上链接不再可用,因此请在此处参阅Microsoft关于计时器触发Azure功能的文档https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-timer?tabs=in-process&pivots=programming-language-csharp
net核心中的其他选项是编写一个BackgroundService并使用Azure应用服务或使用Azure容器服务将其托管在容器示例中。