我有一个Azure应用服务,我需要每X分钟调用一次函数。如果这样做更简单,我可以将该功能作为REST端点。
我知道在ASP.NET应用程序中创建任何类型的计时器都会很糟糕,因为当没有传入连接时,后端不能保证始终运行。
那么我的选择是什么?我知道Azure中的调度程序作业,但是为了触发超过1小时,我需要付费版本,每月12美元触发必要的实现计时器是昂贵的,特别是因为我需要其中几个。
答案 0 :(得分:3)
根据我的经验,Azure function或Azure Webjob时间触发可能适合您的情况。
演示代码:
// Runs once every 5 minutes
public static void CronJob([TimerTrigger("0 */5 * * * *")] TimerInfo timer)
{
Console.WriteLine("Cron job fired!");
}
注意:如果使用Webjob需要从Azure WebApp appsetting设置始终开启。