PHP-如何像作业队列一样一个接一个地运行cron作业

时间:2014-04-26 17:41:28

标签: php linux cron

如何一个接一个地运行cron作业,比如作业队列?

我正在开发的项目有大约20多个cron作业,其中大部分都是每小时开始一次并且是非常数据库密集型的,所以我希望有一些类似于作业队列的东西,这将启动一个接一个的cron作业,所以不是所有20多个工作都在新工作时间开始时启动并使我的服务器不可用。

是否有针对此类内容的构建系统? 或者任何其他简单的方法来向linux cron添加作业队列功能。 ?

1 个答案:

答案 0 :(得分:5)

编写bash脚本以按顺序运行命令,并将其添加到crontab。

例如,创建一个名为phpjobs.sh的文件,其中包含按顺序运行作业的命令: -

#!/bin/bash
/usr/bin/php -q <yourfile1.php>
/usr/bin/someothercommand
/usr/bin/php -q <yourfile2.php>
/usr/bin/php -q <yourfile3.php>

然后使其可执行

chmod 755 phpjobs.sh

然后将其添加到crontab以每小时运行

0 * * * *  root   /path/to/phpjobs.sh