8.6. 队列与定时任务

队列与定时任务

前面几节我们完成了 Laravel Shop 的 Web 站点部署,由于我们在代码中使用了异步队列与定时任务,因此还需要做对应的部署操作。

1. 使用 Horizon 管理定时任务

『Horizon』是 Laravel 官方推出的一个集成在 Laravel 项目中的 Redis 队列管理工具,包含了一个可视化面板和几个管理命令,可以让我们更加方便地管理异步任务。

我们可以通过 composer 直接安装:

$ composer require laravel/horizon

安装完成之后还需要把 Horizon 的配置文件和前端文件放到项目目录中:

$ php artisan vendor:publish --provider="Laravel\Horizon\HorizonServiceProvider"

现在我们访问 http://shop.test/horizon 看看 Horizon 的管理面板:

默认情况下这个页面只能在 APP_ENV=local 的环境可以看到,所以不用担心线上站点信息泄露。

队列与定时任务

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
leo
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 14

TravelerLi
supervisorctl status 问题
0 个点赞 | 8 个回复 | 问答 | 课程版本 5.5
lixiaode
supervisorctl update
0 个点赞 | 6 个回复 | 问答 | 课程版本 5.5
zzb75110
cron 任务执行时间混乱
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.8
jingzhongwa
Composer require 失败
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
AMA32
求助,线上邮箱验证,接收邮件验证不了问题?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
JasonG
项目部署 HTTPS ,访问 horizon 的时候请求静态资源报错
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.8
gyp719
PHP artisan horizon 队列没有执行,好像是被卡住了
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
gyp719
FiveEggs
Composer 出错?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
wyhlzwj
邮件线上发送出问题
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.7
TravelerLi
没有写权限
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
xiaocao
为什么不用 Supervisor 管理定时任务呢?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5