bashaus/solo-php

防止多个cron实例同时运行

dev-master 2013-12-06 14:11 UTC

This package is not auto-updated.

Last update: 2024-09-24 00:50:08 UTC


README

防止相同的cron作业同时运行。与cron一起使用时,可确保作业在运行下一个之前已完成。

此脚本是从Tim Kay编写的原始solo bash脚本移植的。它被移植到PHP,以便在Windows服务器上使用。

安装

将以下内容添加到您的composer.json中。

{
    "require": {
        "bashaus/solo-php": "dev-master"
    },
    "config": {
        "bin-dir" : "bin"
    }
}

用法

bin/solo [port] [exec*]
  • 参数port是要锁定的任意端口号
  • 参数exec是要运行的shell命令

您可以用cron像这样使用它

* * * * * cd ...; bin/solo 24601 ./task.php arg1 arg2 arg3

脚本task.php每分钟运行一次,但只有在上一个调用完成后才会运行。您可以使用任何参数,它不一定要每分钟运行一次。

进一步阅读

请参阅Tim Kay的文档以获取更多用例和如何使用solo的信息。

贡献者

如果您将该项目分支并创建一个pull request,请将您的GitHub用户名、全名和网站添加到上述列表的末尾。