Laravel 排队工人接受相同的工作或重复工作

问题描述

我遇到了一个问题,即多个工人从事同一份工作,即使我有以下设置:

class WaitingForUpload implements ShouldQueue,ShouldBeUnique
{
    use dispatchable,InteractsWithQueue,Queueable,SerializesModels;

    protected $uploadJob;
    public $tries = 3;
    public $backoff = 60;
    public $timeout = 1500;
    public $retryAfter = 1560;

}

在 Supervisord 上,我有以下设置:

[program:waiting_for_upload]
command= PHP artisan queue:work --queue=waiting_for_upload
autostart=true
autorestart=true
user=my_user
numprocs=5
directory=/home/my_user/webapps/my_super_project/html
process_name=%(program_name)s_%(process_num)s

知道为什么会发生这种情况吗?我正在考虑设置多个队列,如“waiting_for_upload_1”、“waiting_for_upload_2”、“waiting_for_upload_3”,但这将是一种解决方法,不会遇到问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)