Laravel Horizon 配置以及使用

栏目: PHP · 发布时间: 5年前

内容简介:Horizon 为 Laravel 提供了基于 Redis 的、拥有美观后台的、代码驱动配置的队列系统。Horizon 让我们可以轻松监控队列系统的关键指标,例如任务吞吐量、运行时间和失败任务等。Laravel Horizon 是官方的扩展包,配置以及使用很简单,跟着可以看到使用很简单,在部署的时候要注意以下几点

导语

Horizon 为 Laravel 提供了基于 Redis 的、拥有美观后台的、代码驱动配置的队列系统。Horizon 让我们可以轻松监控队列系统的关键指标,例如任务吞吐量、运行时间和失败任务等。

Laravel Horizon 是官方的扩展包,配置以及使用很简单,跟着 文档 就可以。

安装以及配置

composer require laravel/horizon
php artisan vendor:publish --provider="Laravel\Horizon\HorizonServiceProvider"
config/horizon.php

使用

  1. 运行 php artisan horizon
  2. 访问 you_site.com/horizon 就可以看到后台了
  3. 还有其他命令

    php artisan horizon:pause
    php artisan horizon:continue
    php artisan horizon:terminate
    

部署

可以看到使用很简单,在部署的时候要注意以下几点

  1. 确保有 failed_jobs 数据表,相关文档可以看 这里
  2. 默认情况下,只能在 local 访问,当然我们可以自定义

    1. 首先修改 config/horizon.phpenvironments 配置项。可以看到其中有 localproduction ,将 production 修改为线上 .envAPP_ENV 的值
    2. 接下来可以自定义后台的访问策略,使用 Horizon:auth 方法, return true 即可访问,否则返回 403 。在 app/Providers/AppServiceProvider.php 中修改如下
public function boot()
{
    Horizon::auth(function ($request) {
        // 这里进行判断,根据需求自行选择

        // 通过认证可以访问
        if (Auth::check()) {
            return true;
        }

        // 指定参数可以访问
        if ($request->input('q') == 'horizon') {
            return true;
        }

    });
}
  1. 使用 Supervisor 进程守护,配置如下,根据情况进行修改(可以参考这两篇文章,这里, 那里 )
[program:horizon]
process_name=%(program_name)s
command=php /var/www/you_project_path/artisan horizon
autostart=true
autorestart=true
user=laradock
redirect_stderr=true
stdout_logfile=/var/www/you_project_path/horizon.log
  1. 使用调度任务来生成监控,以便查看运行情况,在 app/Console/Kernel.php 修改如下
protected function schedule(Schedule $schedule)
{
    // $schedule->command('inspire')
    //          ->hourly();
    $schedule->command('horizon:snapshot')->everyFiveMinutes();
}

结语

Laravel Horizon 还有 标签 以及 通知 的配置,感兴趣的可以查看文档。

参考资料: 官方扩展包 —— 队列系统解决方案:Laravel Horizon


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法设计与分析基础

算法设计与分析基础

Anany Levitin / 清华大学出版社 / 2007-11 / 59.00元

作者基于丰富的教学经验,开发了一套对算法进行分类的新方法。这套方法站在通用问题求解策略的高度,能对现有的大多数算法进行准确分类,从而使读者能够沿着一条清晰的、一致的、连贯的思路来探索算法设计与分析这一迷人领域。本书作为第2版,相对第1版增加了新的习题,还增加了“迭代改进”一章,使得原来的分类方法更加完善。 本书十分适合作为算法设计和分析的基础教材,也适合任何有兴趣探究算法奥秘的读者使用,只要......一起来看看 《算法设计与分析基础》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具