我有一个每日抓取10个用户的日常cron作业,并且与他们做了一堆事情。每天有1000名用户参与该流程。我不希望cron作业重叠,因为它们在服务器负载上很重。他们从各种API调用东西,所以我有超时和缓慢的数据提取来应付。限制运行PHP脚本的cron作业的数量
我试过使用一个标记来标记一个cron作业正在运行,但它不够可靠,因为一些PHP脚本可能会以各种方式超时或失败。
有没有一种很好的方法来阻止多次调用PHP脚本的cron作业,或者控制被调用的次数,因此只有3个实例是例如?
如果可能的话,我宁愿在PHP的解决方案。
此刻我将标志存储为数据库中的值,是否使用锁定类型文件更好,因为在这里https://stackoverflow.com/questions/851872/does-a-cron-job-kill-last-cron-execution?
我一直在寻找跟踪pid的。我现在还在储存开始时间,所以如果它适合你,我会试试看,谢谢! – ed209 2010-05-11 18:56:11