我有一个 Azure webjob,它是作为控制台应用程序创建的,并通过 Visual Studio 发布到 azure。
当我登录到门户网站时,我可以看到网络作业正在运行,但我希望它每 1 小时运行一次。
我有一个 Azure webjob,它是作为控制台应用程序创建的,并通过 Visual Studio 发布到 azure。
当我登录到门户网站时,我可以看到网络作业正在运行,但我希望它每 1 小时运行一次。
使用“触发/计划”WebJob 而不是连续的。
https://docs.microsoft.com/en-us/azure/app-service/webjobs-create#CreateScheduledCRON
两种选择:
使用 Hangfire 并安排每隔一小时运行一次:
RecurringJob.AddOrUpdate(() => Console.WriteLine("This job will execute once in every minute"), Cron.Hourly);
将 Web 作业更改为 Azure Functions 并使用时间触发器:
public static void Run([TimerTrigger("* 0 */1 * * *", RunOnStartup=true)]TimerInfo myTimer, TraceWriter log)
{
//code
}
更多信息:
https://github.com/HangfireIO/Hangfire
https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-scheduled-function