gpt4 book ai didi

PHP 队列问题 - 冗余进程

转载 作者:可可西里 更新时间:2023-11-01 13:21:25 24 4
gpt4 key购买 nike

遇到一个问题,我的一位团队成员正在用 PHP 进行排队处理。 PHP 脚本在命令行上运行,并在每个循环后递归调用自身以检查我们的数据库中是否有任何项目等待处理。如果有,它会 fork 自己,处理队列中的项目,然后重复。如果什么都没有,它就会死掉,并且 cron 作业每 5 分钟重新启动队列。

偶尔两个进程同时运行,抢占同一个队列,互相妨碍。我正在考虑在唤醒过程中引入抖动,以便在过程开始之间有一个随机的时间量。

有没有更好的办法?

最佳答案

抖动只会让碰撞更难预测。

在磁盘上放置一个互斥体。检查它是否早于两个周期前。如果是,忽略并删除它;它被坠毁的东西抛在了后面。否则,已经有一个在运行,所以保释。

关于PHP 队列问题 - 冗余进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13130245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com