加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

php time_sleep_until()和“ MySQL服务器已消失”

发布时间:2021-01-31 03:05:16 所属栏目:MySql教程 来源:网络整理
导读:我有必须每n分钟执行一次的脚本. n分钟是动态的,因此我无法设置cron作业来调用脚本(在特定时间). 所以我所做的是我每隔n分钟将时间存储在数组中,以便执行脚本时,它将首先检查当前时间是否在数组中.如果在数组中找到它,它将继续执行,否则退出. 要执行脚本,

我有必须每n分钟执行一次的脚本. n分钟是动态的,因此我无法设置cron作业来调用脚本(在特定时间).

所以我所做的是我每隔n分钟将时间存储在数组中,以便执行脚本时,它将首先检查当前时间是否在数组中.如果在数组中找到它,它将继续执行,否则退出.

要执行脚本,我必须使用cron作业每分钟运行一次,以检查阵列中的时间.不幸的是,我的Web主机只允许5分钟作为最小间隔.因此,每次调用脚本时,我都会检查是否在数组中找到了$current_time和$current_time(4 * 60)// 4分钟之间的值.如果是的话,并且如果需要的话,我使用time_sleep_until来延迟脚本,直到时间达到数组中的值为止.

因此,如果我的脚本在10:05执行,并且在数组中找到的值为10:06,则我让脚本休眠直到10:06,然后脚本才能继续执行.但是,如果睡眠时间超过一分钟左右,我就会离开Mysql服务器.

我该如何预防呢?还是有更好的方法来做到这一点?

谢谢!

最佳答案 有几个选择,我不知道哪个更好.

首先,请确保您的脚本可与CLI一起使用,然后在分钟后使用http://www.php.net/exec函数(如果您的主机允许)调用它.

第二,设置脚本,使用可能的哈希作为键,并在分钟结束后使用标头重定向,这将称为脚本全新,因此建立了新的MySQL连接.

第三个选项是像在两个脚本中一样设置脚本,除了在计算机上设置一个计划任务/ cron作业以打开该页面(该页面必须位于webroot中)并每分钟或根据需要调用它之外.这不是固定的方法,但是取决于计算机的数量.

第四,类似于第三,但是使用免费的cron作业托管服务,例如:http://www.onlinecronjobs.com/en

希望能有所帮助.如果我想到其他选择,我将进行更新.

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读