【问题标题】:running multiple instances of cron at the same time同时运行多个cron实例
【发布时间】:2012-11-26 17:19:43
【问题描述】:

我在我的数据库中设置了一些条目来在 php 中运行一些脚本。所以我会每隔几分钟运行一个 cron 文件,看看接下来的几分钟我是否有一些脚本要运行,我会触发它们,我想知道如果我有一个脚本要在 12:10 执行会发生什么在 5 分钟内,如果我有另一个请求在 12:12 运行相同的脚本,而第一个脚本的执行尚未完成,会发生什么。文件是否被锁定直到执行完成?还是什么?

同一个文件在不同的时间执行。

我想我可以使用 cron 选项卡来做到这一点,但我不喜欢那样。

【问题讨论】:

  • 它们将同时运行。

标签: php cron


【解决方案1】:

它们同时运行不会有问题,但请记住,如果它们将写入同一个文件/数据库表,您可能会遇到问题。

【讨论】:

    【解决方案2】:

    它将运行脚本两次、三次或任意多次。如果您只想一次运行这个脚本,您可以创建一个锁定文件,然后检查它是否存在。示例:

    if(file_exists('/tmp/script.lock')){
      exit();
    }
    file_put_contents('/tmp/script.lock','');
    
    // execute code
    
    unlink('/tmp/script.lock');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-11
      • 2021-07-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-11
      • 1970-01-01
      • 2016-06-29
      相关资源
      最近更新 更多