【发布时间】:2020-08-19 06:08:59
【问题描述】:
我有一个当前作为 Azure 应用服务运行的 .NET Core 应用程序,我需要它每天只做几次“工作”。为了节省按小时计费,这是我开发的解决方案:
- 使用运行手册(Azure 自动化):在晚上 7:00 将应用服务计划扩展到“免费”层
- 使用运行手册(Azure 自动化):在上午 8:00 将应用服务计划扩展到高级层
- 对我的 .NET Core 应用程序进行硬编码,以确保它只在上午 8:00 到晚上 7:00 之间完成繁重的“工作”
这很好,因为它为我节省了很大一部分成本,因为我只需为应用服务计划扩展到高级层的时间付费。但是绝对不理想。
我的问题是 - 为了完成我想要做的事情,我应该实施什么设计模式?我需要大量的计算资源,但一天中只需要几个小时。我知道 AWS 有您可以配置的“现货”实例 - Azure 中是否有类似的机制?
理想情况下,我可以实施一个解决方案,只在我真正需要时(例如:一天几次,在太阳升起时)为那些繁重的计算资源付费
感谢您的任何见解和帮助!
编辑关于计算类型,我的总结基本上是一些 ML.NET 训练器与一些适度的 Elasticsearch 文档编写并行运行
【问题讨论】:
-
这取决于您的应用程序的性质。它是否可以转换为 Azure Function 并在消费计划上运行?然后,您只需在实际使用它时付费(直到第二个),如果您的应用程序可以利用水平缩放,它将自动缩放。同样,这取决于您从事的工作类型。
-
谢谢 - 我编辑了我的答案以总结计算类型
标签: azure asp.net-core containers azure-web-app-service azure-app-service-plans