有没有办法每分钟(或 2、5 等)运行一个脚本,但前提是它尚未运行?
我们有一组需要每分钟运行一次的脚本。有时他们可能会在一秒钟内开始和结束,其他时候他们可能会持续 5 分钟。
我们当前避免同时执行的方法是is_running在每个脚本中设置一个标志,如果它仍然启用则退出。但这有点不可靠(即,即使在脚本停止后,致命错误也会导致标志保持启用状态)。
我们可以编写我们自己的小管理器,但我想知道是否已经存在更时尚的解决方案。
这是该方法的正确解决方案。通常,将使用 pid 文件并对进程进行 pid 测试以确保其正在运行。如果过时,锁定文件将被删除,并且进程仍将运行。
任何额外的智能通常都作为守护进程写入软件本身,而不是在 cron 中运行。
| 归档时间: |
|
| 查看次数: |
6067 次 |
| 最近记录: |