下面由Laravel教程栏目给大家介绍介绍 Laravel Horizon,希望对需要的朋友有所帮助!

介绍 Laravel Horizon

今天我得意的宣布 Laravel Horizon, 它为 Laravel Redis 队列提供了精美的仪表盘和代码驱动的配置系统。

除了全新的代码驱动配置系统, Horizon 还有美丽的仪表盘 UI, 它完全开源,对整个 Laravel 社区都是免费的,我们明天发布测试版本,我希望你会喜欢它。

仪表盘

Laravel Horizon是什么?有啥用?插图731e0947e59f78cdac2cce6515c8c67.png
Horizon 仪表板是一个漂亮的单页 Vue 应用程序,可通过简单的composer require laravel / horizon直接安装到现有应用程序中。 它提供对队列工作负载,最近的作业,失败的作业,作业重试,吞吐量和运行时指标以及进程计数的实时洞察。 通过Horizon :: auth注册的简单回调控制仪表板的身份验证,从而使您可以完全控制对仪表板的访问。

配置

Horizon 是配置 Laravel 队列的绝佳新方法。 与 Laravel 的调度程序类似,所有队列工作者都可以通过代码配置:

在您的代码中拥有此配置意味着这一切都在源代码控制之下,从而使您的团队可以轻松地进行协作。在config/horizon.php文件中,我们配置要创建的进程数量、需要处理的队列、队列超时时间以及需要传递给 queue:work Artisan 命令的其他任何设置 。

然后,要启动所有的队列工作者,只需要一个简单的命令:php artisan horizon。 不需要其他命令行选项。 该命令将读取 Horizon 配置并配置所有必需的工作进程。

将 Horizon 安装并部署到生产环境后,您可以通过修改配置文件并重新部署来修改整个队列工作者的配置。

失败的任务

Horizon 提供了清晰详细的界面,用于检查和重试失败的任务(是的,我们都有)。 您可以查看该任务的异常堆栈跟踪,标签和最近重试记录。 将失败的任务详细信息直接在页面上显示真是太好了。 由于重试是链接到失败的原始任务,因此您不再需要盲目地尝试在控制台输入queue:retry并确定其重试是成功完成还是再次失败:

标签监控

Horizon 允许您为任务分配标签,包括 EmailBroadcastsNotificationsQueued Listeners。 实际上,Horizon 会根据附加到队列的 Eloquent Model 智能地给大多数任务打上标签。

您可以通过这些标签轻松地搜索到队列任务,从而查看特定的客户任务或者程序中的其他队列任务。 此功能使您可以快速关注高价值客户,或为刚提交支持工单的客户找到失败的任务:

平衡Laravel Horizon是什么?有啥用?插图2

Horizon 可以根据队列的工作负载自动平衡队列中的队列工作进程。 例如,如果default 队列为空,但notifications队列中充满了队列任务,则 Horizon 可以自动将notifications的任务分配到default队列中,以帮助快速处理这些任务。

队列赶上后,Horizon 将确保在所有队列中公平地重新分配任务。

指标图表Laravel Horizon是什么?有啥用?插图3

Horizon 提供吞吐量和平均运行时间图表,使您可以查看单个任务或整个队列的吞吐量和运行时间趋势。 这些指标快照是使用horizon:snapshot命令捕获的,可以使用 Laravel 内置的任务调度将其设置为每分钟运行一次。 这使您可以快速发现部署后的性能下降。

通知Laravel Horizon是什么?有啥用?插图4

当您的某个队列达到一定负荷时,Horizon 会同时发送 Slack 和 SMS 通知。 您可以轻松配置等待时间阈值以确定何时发送通知。 这意味着您始终知道何时队列需要更多的处理进程。 收到通知后,Horizon 的代码驱动配置使您可以快速进行配置更改以增加更多处理进程。

结论 & 感谢

我要特别感谢Mohamed Said,David Hemphill和Steve Schoger,他们都为 Horizon 的设计和开发做出了贡献。 Steve 设计了用户界面,David Hemphill 将其作为 Vue 应用程序实现了接口,Mohamed 将前端连接到了我实现的 Horizon 后端。

以上就是Laravel Horizon是什么?有啥用?的详细内容,更多请关注亿码酷站其它相关文章!


<!–亿码酷站直播班–>Laravel Horizon是什么?有啥用?
—–文章转载自PHP中文网如有侵权请联系ymkuzhan@126.com删除

下载声明:
  • 本站资源如无特殊说明默认解压密码为www.ymkuzhan.com建议使用WinRAR解压;
  • 本站资源来源于用户分享、互换、购买以及网络收集等渠道,本站不提供任何技术服务及有偿服务,资源仅提供给大家学习研究请勿作它用。
  • 赞助本站仅为维持服务器日常运行并非购买程序及源码费用因此不提供任何技术支持,如果你喜欢该程序,请购买正版!
  • 版权声明:
  • 下载本站资源学习研究的默认同意本站【版权声明】若本站提供的资源侵犯到你的权益,请提交版权证明文件至邮箱ymkuzhan#126.com(将#替换为@)站长将会在三个工作日内为您删除。
  • 免责声明:
  • 您好,本站所有资源(包括但不限于:源码、素材、工具、字体、图像、模板等)均为用户分享、互换、购买以及网络收集而来,并未取得原始权利人授权,因此禁止一切商用行为,仅可用于个人研究学习使用。请务必于下载后24小时内彻底删除,一切因下载人使用所引起的法律相关责任,包括但不限于:侵权,索赔,法律责任,刑事责任等相关责任,全部由下载人/使用人,全部承担。以上说明,一经发布视为您已全部阅读,理解、同意以上内容,如对以上内容持有异议,请勿下载,谢谢配合!支持正版,人人有责,如不慎对您的合法权益构成侵犯,请联系我们对相应内容进行删除,谢谢!