gpt4 book ai didi

PHP Cron 作业执行时间限制失败

转载 作者:搜寻专家 更新时间:2023-10-31 22:03:23 25 4
gpt4 key购买 nike

我有一个计划每 7 分钟运行一次的 CronJob。该脚本对多个用户运行一个循环,并通过 SMTP 发送电子邮件或通过 curl 进行一些 API 调用。

因此,大部分执行时间显然花费在 Linux 上 max_execution_time 跟踪的范围之外。所以,因为我在我的脚本中遇到挂起,总是通过重新启动它来修复(我也在寻找挂起的原因,但到目前为止没有成功)。

因为将 set_time_limit 设置为 6 分钟,脚本有时仍会运行 30 分钟,我现在在循环中的每一轮之后检查 microtime(true) 并退出它,如果它一直在运行超过 6 分钟。

不过,该脚本有时会运行 37 分钟(尽管我可以看到循环映射到一轮的电子邮件仍然关闭)。

我剩下的唯一技巧是 pcntl_fork .由于平台依赖性,我不愿意使用它,并且因为我认为使用循环和 microtime(true) 也应该跟踪在进程之外花费的时间,我想了解为什么这不是这里的情况。

最佳答案

max_execution_time 用于限制脚本执行时间。但是,这不会影响系统调用。查看manpage .

您还可以使用 set_time_limit()正确设置脚本可以运行的最长时间。这只会更改范围内脚本的 time_limit。你也试过这个吗?

您可以在 this link 找到另一个被问到的问题可能会有所帮助.

关于PHP Cron 作业执行时间限制失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23459988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com