Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Azure触发的WebJob超时设置为无限_Azure_Asp.net Core_Azure Webjobs - Fatal编程技术网

将Azure触发的WebJob超时设置为无限

将Azure触发的WebJob超时设置为无限,azure,asp.net-core,azure-webjobs,Azure,Asp.net Core,Azure Webjobs,我们可以使用webappsettings(在Azure中)中的(webjobs\u idle\u timeout)属性设置触发的webjobs的空闲超时。为了将其设置为24小时,我现在将此属性设置为86400,但我更愿意将空闲超时设置为无限。有可能吗?如果是,怎么做?如果没有,最大值是多少 我在寻找这个,因为开发/测试设置已经有一段时间没有使用了,当我们开始使用它时,我们不想手动启动webjob。初始启动在发布后/发布期间在CI中完成。据我所知,WEBJOBS\u IDLE\u TIMEOUT似

我们可以使用webappsettings(在Azure中)中的(
webjobs\u idle\u timeout
)属性设置触发的webjobs的空闲超时。为了将其设置为24小时,我现在将此属性设置为86400,但我更愿意将空闲超时设置为无限。有可能吗?如果是,怎么做?如果没有,最大值是多少


我在寻找这个,因为开发/测试设置已经有一段时间没有使用了,当我们开始使用它时,我们不想手动启动webjob。初始启动在发布后/发布期间在CI中完成。

据我所知,
WEBJOBS\u IDLE\u TIMEOUT
似乎没有无限值和最大值,我们可以将IDLE TIMEOUT设置为尽可能大的数字

其实还有另外一种方式也是可行的。正如《圣经》所说

WEBJOBS\u IDLE\u TIMEOUT以秒为单位的时间,之后我们将中止 如果触发的作业处于空闲状态,则运行该作业的进程没有cpu时间或 输出(仅适用于触发的作业)

因此,我们可以在每个时间段添加心跳样式的控制台写入

例如:

//SEE IF THIS HAS BEEN RUNNING FOR MORE THAN 24 HOURS
if (DateTime.Now.Subtract(StartTime).TotalHours >= 24)
                    ThereAreItemsInQueue = false;

                Counter++;
if (Counter % 25 == 0)
   Console.WriteLine("Heartbeat");

有两篇文章供您参考。

是的,控制台ping给我带来了一些想法。我仍然设置了24小时空闲超时,但我们也有一个在预定时间连续运行的webjob。我们现在不再ping触发的webjob控制台样式,而是使用连续webjob在队列中为触发的作业删除一条空消息,以重置空闲超时。@BobMeijwaard很高兴知道问题已经解决,听起来不错。