Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程

2次阅读

首先安装并配置 redis 扩展,然后在。env 文件中将队列驱动设为 redis,接着确认 config/queue.php中的 redis 连接配置正确,之后创建任务类并通过 dispatch 分发,最后启动 php artisan queue:work 监听处理任务。

Laravel 队列由 Redis 驱动怎么配置_Laravel Redis 队列使用教程

laravel 使用 Redis 作为队列驱动非常常见,尤其适合高 并发 场景。配置过程简单,只需几个步骤即可让 Laravel 队列通过 Redis 高效运行。

1. 安装并配置 Redis 扩展

确保你的 PHP 环境已安装 Redis 扩展,Laravel 通过 predis/predisphpredis 与 Redis 通信。推荐使用 composer 安装 predis

composer require predis/predis

如果你使用 phpredis 扩展,需确保已在 php.ini 中启用 extension=redis

2. 配置 .env 文件使用 Redis 队列驱动

打开项目根目录下的 .env 文件,修改队列驱动为 redis:

QUEUE_CONNECTION=redis

同时确认 Redis 连接信息正确(默认使用 default 连接):

REDIS_HOST=127.0.0.1
REDIS_PASSword=NULL
REDIS_PORT=6379

3. 修改 queue.php 配置文件

打开 config/queue.php,找到 redis 驱动配置项,通常如下:

‘redis’ => [
‘driver’ => ‘redis’,
‘connection’ => ‘default’,
‘queue’ => env(‘REDIS_QUEUE’, ‘default’),
‘retry_after’ => 90,
‘block_for’ => null,
],

其中:

  • connection:指 config/database.php 中 Redis 的连接名称
  • queue:任务存入的 Redis 队列名,可自定义
  • retry_after:任务执行超时时间(秒),超时后将重试
  • block_for:阻塞等待新任务的时间,设为 null 表示持续阻塞

4. 创建队列任务并推送到 Redis

使用 Artisan 命令创建任务类:

php artisan make:job SendEmailJob

在控制器或 路由 中分发任务:

use appJobsSendEmailJob;

dispatch(new SendEmailJob());

该任务会被序列化并写入 Redis 的指定队列中(如:queues:default)。

5. 启动队列监听器

运行以下命令启动消费者监听 Redis 队列:

php artisan queue:work –queue=default

如需自动重启(开发环境 推荐):

php artisan queue:listen

生产环境建议配合 Supervisor 守护进程,防止中断。

基本上就这些。配置完成后,Laravel 会通过 Redis 高效处理 异步任务,提升应用响应速度和稳定性。不复杂但容易忽略的是 retry_after 设置和 Redis 连接状态检查。

以上就是 Laravel 队列由 Redis 驱动怎么配置_Laravel Redis 队列使用教程的详细内容,更多请关注 php 中文网其它相关文章!

站长
版权声明:本站原创文章,由 站长 2025-12-21发表,共计1290字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
1a44ec70fbfb7ca70432d56d3e5ef742
text=ZqhQzanResources