我将laravel与phpredis结合使用,并创建了一个webhook,将作业添加到队列中。我已经按照文件去审问了,但我的工作没有排队。
.环境 QUEUE_CONNECTION=redis
配置/database.php 'client' => env('REDIS_CLIENT', 'phpredis'),
配置/queue.php
...
'connections' => [
...
'redis' => [
'driver' => 'redis',
'connection' => 'default',
'queue' => env('REDIS_QUEUE', 'default'),
'retry_after' => 90,
'block_for' => null,
],
...
],
...
我使用的是带有xampp的windows,redis-server.exe正在运行。这是将作业添加到队列时得到的结果:
[9672] 03 Nov 21:44:03 - Accepted 127.0.0.1:52945
[9672] 03 Nov 21:44:03 - Client closed connection
以下是我将作业添加到队列的方式:
ProcessPhotos::dispatch($settings, $data, $id);
这就是我试图运行排队作业的方式:
php artisan queue:work
or
php artisan queue:listen
我正在运行之前的一个命令,什么都没有发生,我也没有收到任何错误。这就好像队列是空的(我也用这段代码检查了队列长度,得到了 000
).
我也试过在redis上设置一把钥匙,这似乎奏效了。有人知道发生了什么吗?如果我不能解决这个问题,我想转到数据库。。。
1条答案
按热度按时间vyswwuz21#
我已经解决了这个问题!
原来是服务器出了问题(我重新安装了redis扩展,但它仍然不工作,然后我更改了服务器版本,它仍然工作)
我从这里重新安装了redis扩展,并切换到这个服务器版本。其余的设置和我之前的帖子一样。