用 Sleep 和 Flock 抵消 Crons

Offset Crons with Sleep and Flock together

我每分钟 运行 几个 cron 作业 - 我使用 flock 来防止重叠,因为几个脚本可能 运行 超过一分钟:

* * * * * flock -n /path/to/lock-process-1.txt php /path/to/process-1.php

* * * * * flock -n /path/to/lock-process-2.txt php /path/to/process-2.php

但是,所有进程同时 运行(而且大多数进程只需要几秒钟)。所以我想错开 crons,使它们相隔 10 秒。我在别处读到这可以通过睡眠来完成 (from this post):

* * * * * sleep 10;curl http://www.google.com/

我的问题是:我可以将 sleep 与 flock 一起使用吗?如果可以,我应该在哪里添加 sleep 10;

我继续测试了这个,在羊群之前睡觉是可以的:

* * * * * sleep 10; flock -n /path/to/lock-process-2.txt php /path/to/process-2.php