我在控制器中的函数调用并行,并且在laravel中创建了一个使用队列的作业,因为并行调用会导致问题
我在我的函数中将此工作称为:
$this->dispatch(new ProcessReferal($orderId));
然后我在终端中运行此命令:
php artisan queue:work --tries=3
但是我的工作仍在并行运行
并同时处理该过程
怎么了?
答案 0 :(得分:0)
如果要在本地服务器上检查它。然后,您必须在.env文件中添加QUEUE_DRIVER=database
。
QUEUE_DRIVER=sync
用于并行呼叫
答案 1 :(得分:0)
您好,
使用队列laravel,您需要在代码中配置一些信息:
查看更多:https://laravel.com/docs/5.8/queues#connections-vs-queues
第一
驱动程序:默认同步,因此您需要将其更改为:数据库, redis ... 您可以在.env文件中更改它(QUEUE_DRIVER = database ...)
连接:如果将驱动程序设置为数据库并为项目使用mutil DB,则非常重要。
第二:
希望它可以为您提供帮助。