QUEUE_CONNECTION 'database'有效,但'redis'抛出'Array to String conversion'



我只是在尝试运行一个事件和侦听器循环并将模型传递给它

event(new LabelsCreated($model, 'string'));

这非常适合QUEUE_CONNECTION=database但是QUEUE_CONNECTION=redis,它给我抛出了一个错误:

#message:"数组到字符串的转换">

#code: 0

#file: "/home/vagrant/Code/Upworks/myproj/vendor/laravel/framework/src/Illuminate/Queue/RedisQueue.php">

#line: 302

#severity:E_NOTICE

我的事件类如下所示:

class LabelsCreated
{
use Dispatchable, SerializesModels;
public $model;
public $string;
public function __construct($model, $string)
{
$this->model = $model;
$this->string = $string;
// comes here
}
}

但它根本不会排队我的监听器。


我的配置/队列.php,redis数组如下所示:

'redis' => [
'driver' => 'redis',
'connection' => 'default',
'queue' => ['default', 'export'],
'retry_after' => 90,
'block_for' => null,
],

它可能是指关键的"队列"值吗?

这是我的配置/队列中的问题.php

'redis' => [
'driver' => 'redis',
'connection' => 'default',
'queue' => ['default', 'export'], // THIS LINE
'retry_after' => 90,
'block_for' => null,
],

我尝试将其保留为默认值

'queue' => 'default'

它在同一连接上运行多个队列。

更深入的见解:https://laracasts.com/discuss/channels/laravel/multiple-queues-for-redis-connection?page=0#reply=461404

相关内容

  • 没有找到相关文章

最新更新