asp.net – 如何在Azure共享主机中启动Hangfire(“永远在线”)?

我想将一个简单的共享主机ASP.NET MVC站点部署到Azure(使用免费站点选项),该站点使用 Hangfire来运行计划任务.

问题是该站点仅在第一个请求时启动,因此Hangfire doesn’t start scheduling tasks until then.使用IIS或专用VM,您可以设置“始终打开”选项以预热站点.但这在共享主机中是不可能的.

我该怎么办?我想到支付最小的VM,called “A0”,并在那里放一个ping脚本,以确保我的网站始终正常运行.这可行,但似乎有点矫枉过正.

还有其他好的选择吗?

解决方法

如果你仍然想使用azure网站,你必须从SHARED切换到BASIC(这是第一个带有ALWAYS ON选项),但它比最便宜的VM贵3倍多.

如果我是你,我会选择最便宜的云服务 – 网络角色.它比最便宜的VM要贵一些,但它已经为网站配置了,你不必自己设置所有东西,你可以使用Visual Studio来部署它,你可以使用RDP到盒子等等.

有关定价详情,请参阅http://azure.microsoft.com/en-us/pricing/details/cloud-services/.

但正如评论中所建议的那样,Azure Schedule是值得关注的.

更新:(警告 – 有趣但完全不严重的解决方案)

使用Azure计划程序ping您的网页以使其保持活动状态;-)您可以使用免费套餐每小时创建最多5个作业.这意味着您可以创建5个作业,每隔12分钟就可以ping您一次网站.

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....