我已经开发了一个webjob,在我测试它的同时,我将它设置为手动触发。我对它的功能很满意,现在我想设置它每30分钟运行一次。
在发布文件(webjob- publish -settings.json)中,我设置了此"runMode": "Continuous",并包含了一个具有此设置的setings.job文件
{
"schedule": "0 */30 * * * *"
}我最初将其设置为“如果更新则复制”,并上传了set作业。在azure webjob部分,我有一个关于这个webjob的列表,type = continuous,它显示了时间表设置。
我不得不做一些修改并再次上传,但现在状态显示为‘等待重启’,日程信息已经消失。我将settings.job文件更改为“始终复制”,但计划仍未显示。(仅n/a)
这个过程应该是如何工作的?
**更新
我仍然不能让它工作,在我的主程序文件中我有这个
Task callTask = host.CallAsync(typeof(Functions).GetMethod("CreateQueueMessage"));
callTask.Wait();然后,我有一个webjob-publish-settings.json文件,其中包含以下内容
"runMode":"OnDemand“
最后是一个包含以下内容的settings.job文件
“时间表”:"0 0,15,30,45 ** *“
所以我希望它现在每15分钟运行一次,但事实并非如此,时间表甚至没有显示在the作业旁边
发布于 2017-08-17 23:52:04
如果您的目标是拥有一个计划的WebJob,那么您不应该将其部署为一个连续的WebJob,这是非常不同的事情。Continuous WebJobs适用于启动但从不终止的可执行文件的情况。当您的exe启动、执行一项任务,然后终止时,将使用触发(和计划) WebJobs。
在continuous WebJobs中完全忽略该计划。
您每分钟都会看到连续作业运行的原因是系统一直在尝试重新启动它,因为它希望它永远不会终止。
https://stackoverflow.com/questions/45734388
复制相似问题