如何解决Heroku 上的失控 node-cron 任务
我使用 node-cron 在 Heroku(付费)dyno 中每两分钟运行一次计划任务。
在最近的一次部署之后,我注意到有两次相同的作业正在运行。很奇怪,因为我的开发机器上只运行了一次。
在调试了几个小时后,我意识到我的 Heroku dyno 上有一个失控的任务。旧代码仍在后台某处运行,我不知道如何阻止它。
2021-05-01T22:45:36.088254+00:00 app[web.1]: ----------------------------------
2021-05-01T22:45:36.088488+00:00 app[web.1]: NEW ProcessFulfillmentsJob Running
2021-05-01T22:45:36.088714+00:00 app[web.1]: 5/1/2021,10:45:36 PM
2021-05-01T22:45:36.088801+00:00 app[web.1]: ----------------------------------
2021-05-01T22:45:36.123024+00:00 app[web.1]: There are 0 fulfillments in 'pending' status...
2021-05-01T22:45:36.125054+00:00 app[web.1]:
2021-05-01T22:46:00.002412+00:00 app[web.1]: -------------------------------
2021-05-01T22:46:00.002426+00:00 app[web.1]: ProcessFulfillmentsJob Running
2021-05-01T22:46:00.002498+00:00 app[web.1]: 5/1/2021,10:46:00 PM
2021-05-01T22:46:00.002501+00:00 app[web.1]: -------------------------------
2021-05-01T22:46:00.023104+00:00 app[web.1]: There are 0 fulfillments in 'pending' status...
2021-05-01T22:46:00.023114+00:00 app[web.1]:
2021-05-01T22:47:36.190390+00:00 app[web.1]: ----------------------------------
2021-05-01T22:47:36.190479+00:00 app[web.1]: NEW ProcessFulfillmentsJob Running
2021-05-01T22:47:36.190580+00:00 app[web.1]: 5/1/2021,10:47:36 PM
2021-05-01T22:47:36.190633+00:00 app[web.1]: ----------------------------------
2021-05-01T22:47:36.264928+00:00 app[web.1]: There are 0 fulfillments in 'pending' status...
2021-05-01T22:47:36.272234+00:00 app[web.1]:
2021-05-01T22:48:00.003411+00:00 app[web.1]: -------------------------------
2021-05-01T22:48:00.003431+00:00 app[web.1]: ProcessFulfillmentsJob Running
2021-05-01T22:48:00.003520+00:00 app[web.1]: 5/1/2021,10:48:00 PM
2021-05-01T22:48:00.003524+00:00 app[web.1]: -------------------------------
2021-05-01T22:48:00.027081+00:00 app[web.1]: There are 0 fulfillments in 'pending' status...
“新”是我刚刚部署的修改后的代码……另一项工作每 2 分钟准确地保持运行一次。
我已经尝试了一切来阻止这个...停止 web.1 dyno,杀死它,缩小到 0,更改为“免费”计划,将 dyno 置于和退出维护模式。但没有什么能阻止这个流氓过程。事实上,如果我完全关闭 dyno,它会每 2 分钟重新启动一次。
我提交了支持请求,但与此同时,我现在同时运行新旧代码。我不知道如何解决它。
有没有人遇到过这种情况?
提前致谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。