Laravel5.8 队列的使用与监控

2019-08-09  本文已影响0人  3132

队列

Laravel5 使用队列可以异步执行消耗时间的任务,降低请求的响应时间

安装队列驱动

composer require "predis/predis:~1.1"

关于配置队列

    其中包含所有支持的队列驱动
    
    .
    .
    'redis' => [
            'driver' => 'redis',// 队列驱动类型
            'connection' => 'default',
            // 默认队列名称 default,若有多个job最好命名互相不一致
            'queue' => env('REDIS_QUEUE', 'default'),
            // 如果retry_after 设定的值为 90, 任务在运行 90 秒后还未完成,那么将被释放回队列而不是删除掉。
            'retry_after' => 90,
            //  redis 节点
            'block_for' => null,
        ],
    .
    .
        # 队列执行失败配置参数
    'failed' => [
        # 队列保存失败 链接数据库默认mysql
        'database' => env('DB_CONNECTION', 'mysql'),
        # 队列保存失败 保存数据库表 failed_jobs 中
        'table' => 'failed_jobs',
    ],
QUEUE_CONNECTION=redis

生成任务类

分发任务

关于队列监控

    composer require "laravel/horizon:~1.0"
php artisan vendor:publish --provider="Laravel\Horizon\HorizonServiceProvider"
http://yourProject.com/horizon
php artisan horizon
上面讲述到 `artisan horizon` 是不会再修改代码后自动重启。
当需要终止当前 `Horizon` 主进程,则需要通过进程工具来重启。
上一篇 下一篇

猜你喜欢

热点阅读