【发布时间】:2012-10-19 06:37:37
【问题描述】:
我的一位团队成员在 PHP 中进行排队处理时遇到问题。 PHP 脚本在命令行上运行,并在每个循环后递归调用自身以检查我们的数据库中是否有任何项目等待处理。如果有,它会自行分叉,处理队列中的项目,然后重复。如果什么都没有,它就会死掉,并且一个 cron 作业每 5 分钟重新启动一次队列。
有时两个进程同时运行,抢占同一个队列,并相互干扰。我正在考虑在唤醒过程中引入抖动,以便在过程开始之间有一个随机的时间量。
有没有更好的办法?
【问题讨论】: