Laravel 5.5 Queue_Loedan的博客-CSDN博客


本站和网页 https://blog.csdn.net/qq_37910492/article/details/84546417 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

Laravel 5.5 Queue_Loedan的博客-CSDN博客
Laravel 5.5 Queue
Loedan
于 2018-11-27 09:26:20 发布
206
收藏
分类专栏:
PHP
laravel
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_37910492/article/details/84546417
版权
PHP
同时被 2 个专栏收录
46 篇文章
2 订阅
订阅专栏
laravel
30 篇文章
1 订阅
订阅专栏
Queue(队列)
// 分发任务
dispatch(new Job); // 以下的任务将被委派到默认队列...
dispatch((new Job)->onQueue('emails')); // 以下任务将被委派到 "emails" 队列...
ProcessPodcast::dispatch($podcast)->onConnection('sqs'); // 分发到指定的连接
ProcessPodcast::dispatch($podcast);
(延时分发)
ProcessPodcast::dispatch($podcast)
->delay(now()->addMinutes(10));
(任务链)
ProcessPodcast::withChain([
new OptimizePodcast,
new ReleasePodcast
])->dispatch();
(指定最大失败次数/超时时间)
* 最大失败次数
php artisan queue:work --tries=3
public $tries = 5;
* 基于时间的尝试次数
public function retryUntil()
return now()->addSeconds(5);
* 超时
php artisan queue:work --timeout=30 // 单位为 秒
public $timeout = 120;
// 运行队列进程
(处理单个任务)
php artisan queue:work --once
(指定连接和队列)
php artisan queue:work redis
php artisan queue:work redis --queue=emails
(队列优先级)
dispatch((new Job)->onQueue('high'));
php artisan queue:work --queue=high,low
(队列进程 & 部署)
php artisan queue:restart
// 处理失败的任务
php artisan queue:failed-table // 记录任务失败表
public function failed(Exception $exception)
// 发送失败通知, etc...
* 重试失败的任务
php artisan queue:failed // 查看已插入到 failed_jobs 数据表中的所有失败任务
php artisan queue:retry 5 // 重试一个 ID 为 5 的失败任务
php artisan queue:retry all // 重试所有失败任务
php artisan queue:forget 5 // 删除一个失败任务
php artisan queue:flush // 删除所有失败任务
// 任务事件
Queue 门面提供的 before 和 after 方法可以在任务被处理之前或之后指定要执行的回调。通常,你可以在服务提供者中使用这些方法。比如,我们可能在AppServiceProvider 这样用
public function boot()
Queue::before(function (JobProcessing $event) {
// $event->connectionName
// $event->job
// $event->job->payload()
});
Queue::after(function (JobProcessed $event) {
// $event->connectionName
// $event->job
// $event->job->payload()
});
Loedan
关注
关注
点赞
收藏
打赏
评论
Laravel 5.5 Queue
Queue(队列)// 分发任务 dispatch(new Job); // 以下的任务将被委派到默认队列... dispatch((new Job)->onQueue('emails')); // 以下任务将被委派到 "emails" 队列... ProcessPodcast::dispatch($podcast)->onConnection('sq...
复制链接
扫一扫
专栏目录
Laravel中使用Queue的最基本操作教程
daifeng的博客
01-12
907
配置
添加 Redis 包
在 composer.json 中 require 部分加入 "predis/predis": "~1.0",,然后 composer up 更新一下即可。
database.php
在 database.php 配置文件中对 redis 数据库部分进行配置,默认有一个 default 连接,就用这个好了:)
根据这个默认连接中需要的配置项,编辑 .env 配置文件,将其中的 REDIS_HOST、REDIS_PASSWORD、REDIS_PORT 填写成自己服务器中
Laravel 运行队列处理器 queue:work 与 queue:listen 区别及 Windows 终端命令问题
最新发布
wgchen
09-09
330
Laravel 运行队列处理器 queue:work 与 queue:listen 区别及 Windows 终端命令问题
参与评论
您还未登录,请先
登录
后发表或查看评论
Laravel队列任务过期 & 超时
Climber813
12-25
8325
任务过期 & 超时
任务过期 在配置文件 config/queue.php 中,每个连接都定义了 retry_after 项。该配置项的目的是定义任务在执行以后多少秒后释放回队列。如果retry_after 设定的值为 90, 任务在运行 90 秒后还未完成,那么将被释放回队列而不是删除掉。毫无疑问,你需要把 retry_after 的值设定为任务执行时间的最大可能值。
注:只有 Ama...
Laravel 队列-数据库驱动实现队列
weixin_39218464的博客
07-16
322
前言
队列系统能够将对时间实时性要求比较低的事物进行延迟处理,这样做至少有这两方面的好处,一是短时间大量同类型逻辑处理同时出现,把它们放到队列中,按照一定的时间延迟,一件一件处理,这样避免服务器资源瞬时被逼到峰值,造成服务器压力过大;二是便于这类事物的跟踪和维护。队列功能合理分配服务器计算资源,让服务器运行更为平稳。
Laravel数据库队列配置
1).env配置连接队列驱动为database
QUEUE_CONNECTION=database
2)创建记录执行任务与失败任务数据库迁移文件
# 创建用于存
laravel queue 队列使用
joshua317的博客
09-03
666
本文为joshua317原创文章,转载请注明:转载自joshua317博客https://www.joshua317.com/article/4
1.队列介绍
Laravel 队列提供了可以跨各种不同队列后台的统一 API,例如 Beanstalk、Amazon SQS、Redis 甚至关系数据库。通过队列,可以将耗时任务 (如发送电子邮件) 的处理往后推延。延迟这些耗时的任务可以极大地提升 web 请求响应速度。
2.队列涉及到的相关配置
队列配置文件存储在config/queue.php中...
TCP全链接队列
weixin_44052482的博客
11-03
249
问题
最近发现客户端调用RT比较高,并且偶尔Connection reset出现,而查看服务运行情况,资源占用cpu、memory和线程都正常。通过分析是服务的一个api接口处理过慢,慢接口导致tcp全链接队列溢出
全链接队列和半链接队列
tcp三次握手时,linux内核会维护两个队列:
全链接队列,也称为syn队列
半链接队列,也称为accept队列
三次握手过程
1、 客户端发送SYN包,并进入SYN_SENT状态
2、服务端接收到数据包将相关信息放入半连接队列(SYN 队列),并返回SYN+ACK
laravel 消息队列的简单使用
xxpxxpoo8的专栏
09-21
301
1,安装laravel redis扩展
composer require predis/predis -vvv
2 配置redis
REDIS_HOST=192.168.0.110
REDIS_PASSWORD=aJEWARAWR
REDIS_PORT=6379
//队列连接
QUEUE_CONNECTION=redis
3 执行代码
php artisan make:job TestJob
3,模拟分发100个任务 队列名为 my_custom,这个在监听时需要
p...
laravel 任务队列_Laravel 消息队列的优先级和失败任务重试实现
weixin_42519170的博客
12-30
1202
上篇教程发布后,有同学反馈消息队列的优先级怎么实现,Laravel 本身对此提供了支持,除此之外,Laravel 的队列组件还支持批处理、延迟推送、失败任务处理、消息队列中间件、频率限制等很多特性,一篇教程根本介绍不完,毕竟消息队列也是个很复杂的系统,但是放到这里来讲似乎又偏离了 Redis 这个主题,所以这里学院君先给大家简单介绍下消息队列优先级和失败任务处理的实现,至于更多功能特性,...
laravel queue java_Laravel中使用Queue的最基本操作教程
weixin_36212959的博客
02-17
93
前言laravel中的队列服务跟其他队列服务也没有什么不同,都是最符合人类思维的最简单最普遍的流程:有一个地方存放队列信息,一个PHP进程在运行时将任务写入,另外一个PHP守护进程轮询队列信息,将达到执行要求的任务执行并删除。由于PHP是url驱动的同步语言,本身是阻塞的,所以laravel提供一个守护进程工具来查询并执行队列信息也就不足为奇了。这两天初次接触 Laravel 的队列,也是搞了好一...
laravel 任务队列_laravel 异步队列详解
weixin_33206646的博客
12-29
1892
异步队列:可以大幅度缩短 Web 请求和响应的时间。注意:本地安装配置redis扩展,且已经启动redis1、创建队列任务:php artisan make:job CloseOrder2、CloseOrder.php:namespaceApp\Jobs;useIlluminate\Bus\Queueable;useIlluminate\Queue\SerializesModels;use...
laravel5.6 基于redis,使用消息队列(邮件推送)
wgchen
06-21
242
laravel5.6 基于redis,使用消息队列(邮件推送)用户表config/queue.php 文件如下config/database.php创建队列任务类(app/Jobs/xxx.php)控制器将数据添加到队列中启动、监听队列监听三种情况:设置API路由,执行请求,执行队列任务查看redis是否有队列数据命令行监听界面查看邮箱发件箱,邮件已发出使用Supervisor将队列任务启动 添加到守护进程中总结
邮件发送如何配置参考:https://www.cnblogs.com/clubs/p/1064
laravel 队列操作queue
weixin_46044420的博客
05-13
1034
使用场景:
有些任务并不需要及时运行,就可以将其写入队列,从而不影响主业务逻辑的进程。
如:此篇博文发布成功后推送消息给其关注的用户。假如粉丝很多,肯定不能将发布博文与推送通知的逻辑捆绑在一起,不然服务器资源卡死。
下面简单介绍如何使用
1.配置队列(config/queue.php)
框架所支持的队列驱动的配置都有。包括:database,Beanstalkd,Amazon SQS,Redis,和一个同步(本地使用)的驱动。还有一个名为 null 的驱动表明不使用队列任务。
ps:这里的队列驱动 可以理解
如何在laravel5 中使用queue队列
homelam的博客
06-12
1万+
如何在laravel5 中使用queue队列
Laravel Queue是延迟处理应用程序中耗时任务的有效方法。此类任务的示例可能包括每当新用户在您的应用程序中注册或通过社交媒体分享帖子时发送验证电子邮件。Laravel队列有助于延迟这些任务,从而提高Web应用程序向您的应用程序的速度。
实例说明
我们将构建一个简单的博客应用程序,允许您提交帖子并在创建新帖子时发送电子邮件。我们将利用队...
Php laravel 队列,Laravel 的队列系统介绍
weixin_36275231的博客
03-24
285
这篇文章主要介绍的内容是关于Laravel 的队列系统介绍,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下Laravel 队列为不同的后台队列服务提供统一的 API , 例如 Beanstalk,Amazon SQS, Redis,甚至其他基于关系型数据库的队列。 队列的目的是将耗时的任务延时处理,比如发送邮件,从而大幅度缩短Web请求和相应的时间。队列配置文件存放在 config/...
Laravel Queue——消息队列任务与分发源码剖析
逐梦先锋的博客
11-08
444
在实际的项目开发中,我们经常会遇到需要轻量级队列的情形,例如发短信、发邮件等,这些任务不足以使用kafka、RabbitMQ等重量级的消息队列,但是又的确需要异步、重试、并发控制等功能。通常来说,我们经常会使用Redis、Beanstalk、Amazon SQS来实现相关功能,laravel为此对不同的后台队列服务提供统一的API,本文将会介绍应用最为广泛的redis队列。
本文...
laravel 队列queue
zimuxin的专栏
09-30
3862
队列
Laravel队列服务为各种不同的后台队列提供统一的API
允许推迟耗时任务(例如发送邮件)的执行,从而大幅提高web请求速度
配置文件
Config/queue.php
支持模式 Supported: "sync", "database","beanstalkd", "sqs", "redis",
//默认选择的是同步驱动
'default' =>env('QUEUE
Laravel 速查表 Queue
六月的雨
06-10
438
Queue::push('SendMail', array('message' => $message));
Queue::push('SendEmail@send', array('message' => $message));
Queue::push(function($job) use $id {});
// 在多个 workers 中使用相同的负载
Queue::bulk(...
thinkphp-queue自带的队列包使用分析
热门推荐
will5451的博客
05-24
4万+
前言当前笔记中的内容针对的是 thinkphp-queue 的 v1.1.2 版本,现在官方已经更新到了 v1.1.3 版本, 下文中提到的几个Bug在最新的master分支上均已修复。 笔记中的部分内容还未更新。传统的程序执行流程一般是 即时|同步|串行的,在某些场景下,会存在并发低,吞吐量低,响应时间长等问题。在大型系统中,一般会引入消息队列的组件,将流程中部分任务抽离出来放入消息队列,并由专...
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
©️2022 CSDN
皮肤主题:大白
设计师:CSDN官方博客
返回首页
Loedan
CSDN认证博客专家
CSDN认证企业博客
码龄6年
暂无认证
54
原创
8万+
周排名
118万+
总排名
17万+
访问
等级
2029
积分
18
粉丝
36
获赞
15
评论
141
收藏
私信
关注
热门文章
Ubuntu 和 Debian 的关系
30860
提高PHP开发效率, PhpStorm必装的几款插件
16335
ToDoList 简易使用教程
14063
php脚本暴力破解网站密码(附php源代码)
9609
laravel :paginate()上一页,下一页
8742
分类专栏
PHP
46篇
Linux
9篇
windows
mysql
5篇
laravel
30篇
git
8篇
drupal
Vagrant
3篇
API
5篇
Homestead
5篇
docker
2篇
HTTP
1篇
程序安全
5篇
编辑器
7篇
SourceTree
1篇
Mix
3篇
Sass
3篇
Less
3篇
Js
5篇
Npm
5篇
Yarn
4篇
面试题
5篇
Web攻防
3篇
理论 & 基础
4篇
Json
1篇
Markdown
1篇
任务管理器
1篇
Mac
2篇
swagger
3篇
Nodejs
1篇
vue
1篇
Redis
1篇
Nginx
1篇
最新评论
ToDoList 简易使用教程
Lo_博学_ve:
问一下,邮件发送功能怎么用
Nginx正向代理与反向代理
m0_72822527:
能请博主帮忙破解一下qq号密码吗,时间太长忘记了。
提高PHP开发效率, PhpStorm必装的几款插件
Loedan:
已经很久不用了,开启后风扇狂转
提高PHP开发效率, PhpStorm必装的几款插件
psp3000moon:
activate-power-mode 这个插件的截图 呃呃呃 怎么说呢 java代码?
php脚本暴力破解网站密码(附php源代码)
hury1001:
大佬,您这不需要字典怎么破有的密码是字母数字结合的怎么破,有偿付费请教
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
Nginx正向代理与反向代理
关于进程,线程,协程,一点心得
深度挖掘 Laravel 生命周期
2019年45篇
2018年42篇
2017年7篇
目录
目录
分类专栏
PHP
46篇
Linux
9篇
windows
mysql
5篇
laravel
30篇
git
8篇
drupal
Vagrant
3篇
API
5篇
Homestead
5篇
docker
2篇
HTTP
1篇
程序安全
5篇
编辑器
7篇
SourceTree
1篇
Mix
3篇
Sass
3篇
Less
3篇
Js
5篇
Npm
5篇
Yarn
4篇
面试题
5篇
Web攻防
3篇
理论 & 基础
4篇
Json
1篇
Markdown
1篇
任务管理器
1篇
Mac
2篇
swagger
3篇
Nodejs
1篇
vue
1篇
Redis
1篇
Nginx
1篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
打赏作者
Loedan
你的鼓励将是我创作的最大动力
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值