首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Azure连续WebJob“优雅”关机小于5秒

Azure连续WebJob“优雅”关机小于5秒
EN

Stack Overflow用户
提问于 2015-02-07 19:09:01
回答 2查看 1.8K关注 0票数 3

我发现这个关于WebJobs“优雅”关闭的博客- http://blog.amitapple.com/post/2014/05/webjobs-graceful-shutdown/#.VNZbLPmsXZ0

它说,对于连续WebJobs,默认情况下,优雅的关闭将是5秒。

当我的WebJob关闭时,我想发送一封电子邮件,所以尝试了博客中详细介绍的方法,但是这封电子邮件没有发送(我有一封电子邮件在WebJob启动时发送确定)。

查看网络作业的日志,我认为这可能是因为关机需要1秒而不是5秒-如果我正确地读取日志的话。

在截图中,显示在18:07:58 "WebJob正在停止“,然后在18:07:58”状态更改为已停止“,所以不是5秒。

有人知道我如何确保关闭时间是5秒吗?

或者,即使有可能将连续WebJobs的关闭宽限期延长到5秒以上?

提前感谢

** 更新 **

我的问题是,我忘记了FileWatcher事件处理程序位于与主线程不同的线程上。因此,在事件处理程序逻辑完成之前,主线程已经完成,作业停止了。已经接受了Amit苹果的评论,因为这为我指明了正确的方向。感谢你们两位的投入。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-02-09 00:14:09

默认情况下,WebJobs运行时将等待5秒才能终止进程。正如我从日志中看到的,进程实际上是自己退出的(可能是因为您已经实现了on关机检测),因此没有理由等待,关闭过程继续进行。

"stopping_wait_time"是用于扩展5秒默认值的适当设置。

关于开放源码,我可以向您展示如下代码:https://github.com/projectkudu/kudu/blob/master/Kudu.Core/Jobs/ContinuousJobRunner.cs#L156-L190

票数 3
EN

Stack Overflow用户

发布于 2015-02-07 21:16:45

来自:https://github.com/projectkudu/kudu/wiki/Web-jobs#continuous

您可以通过在settings.job文件中指定它(以秒为单位)来更改作业的宽限期(应该在与作业脚本相同的根目录中)。 { "stopping_wait_time":60 } 这将使作业宽限期为60秒,而不是默认的。

此外,请注意,如果您有一个网络作业运行,您应该将网站设置为“始终打开”。这可以在管理门户中配置。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28386198

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档