cron作业会关闭服务器?
我正在使用付费主机Hosting24来运行我的网站。我得到了一个每1分钟执行一次以下代码的cron作业。cron作业会关闭服务器?
<?php
require_once('connect.php');
for($c = 0; $c < 60; $c=$c+5)
{
// php to mysql queries SELECT/ UPDATE/ INSERT etc...
sleep(5);
}
mysql_close($my_connection);}
?>
我试着用for循环让脚本运行1分钟。最终我的脚本应该运行,只要我希望它是因为服务器会每1分钟执行一次。
但是,我打开了我的网站一段时间,然后我无法连接到它。我甚至无法访问我的cPanel。
我的cron作业脚本是否使系统过热,所以系统关闭了? 我应该如何设置我的cron作业脚本让它每1分钟运行一次并持续1分钟?
谢谢。
我的经验是,需要包含文件的cron作业应该包含该文件的完整路径(CLI环境可能与Web服务器内部的环境差别很大)。试试看看是否有帮助。
如果没有,您需要做的下一件事是关闭cron作业并自己从CLI运行它,使用top
来查看进程使用情况。看看你的cron运行需要多长时间。
我是否正确地说,只要在1分钟内完成,cron作业就应该正常运行。例如,cron作业从下午1点开始,脚本运行55秒,系统放松5秒,脚本又从下午1:01开始? –
这取决于你的脚本在做什么以及你的系统忙于做其他事情。如果您的数据库正在投放网站,并且您获得了大量流量,则完成后可能需要一分钟时间。你真的不能为脚本规划时间框架,因为你永远无法100%确定它运行的环境。 – Machavity
很难理解你为什么要这样做。假设您的查询需要一点时间,我认为您最终会运行多个脚本,使查询变得更慢。你对这个可怜的DB做了什么? – cjc343
我认为系统会自动终止超过1分钟的任何cron作业。我正在使用此cron作业脚本来更新模拟市场的数据库。所以,计算必须每5秒完成一次。 –