php代码实现tp5监听队列,thinkPHP5的队列使用
1、下载tp5的完全包,里面含有queue的扩展。如果没有执行如下命令:
composer require topthink/think-queue 1.1.4
2、执行第二步:
执行的队列:
namespace app\admin\controller;
use think\queue\Job;
use think\Db;
class Work{
public function fire(Job $job, $data)
{
//执行业务逻辑
$isJobDone = Db::name('order_queue')->insert([
'utime' =>time(),
'email' =>$data
]);
if ($isJobDone) { //成功删除任务 $job->delete(); } else { //任务轮询4次后删除 if ($job->attempts() > 3) { // 第1种处理方式:重新发布任务,该任务延迟10秒后再执行 //$job->release(10); // 第2种处理方式:原任务的基础上1分钟执行一次并增加尝试次数 //$job->failed(); // 第3种处理方式:删除任务 $job->delete(); } } }
}?>
业务文件 Controller
public function queue()
{
// \think\Queue::push('app\admin\controller\Queue@fire', '284560@qq.com', $queue = '777');
// \think\Queue::push('app\common\queue\QueueClient@sendMAIL', '28456049@qq.com', $queue = null);
\think\Queue::push('app\admin\controller\Work@fire', '28456049@qq.com', $queue = '好队列');
echo 'ok';
}
后台监听:
php think queue:listen
php代码实现tp5监听队列,thinkPHP5的队列使用相关推荐
- laravel 任务队列_Laravel5.5之事件监听、任务调度、队列
流程: 1.1 创建event php artisan make:event UserLogin LoginController.php /*** The user has been authenti ...
- Laravel5.5之事件监听、任务调度、队列
一.事件监听 流程: 1.1 创建event php artisan make:event UserLogin LoginController.php /*** The user has been a ...
- android锁屏代码分析,Android 监听锁屏、解锁、开屏 功能代码
1.首先定义 ScreenListener package com.app.lib; import android.content.BroadcastReceiver; import android. ...
- 微信怎么绑定消息服务器吗,fastweixin: 极其方便的实现微信公众平台服务端开发,2行代码完成服务器绑定,3行代码实现用户消息监听...
fastweixin 作者:peiyu 快速搭建微信公众平台服务器 简单封装了所有与微信服务器交互的消息:文本消息.图片消息.图文消息等等 提供了基于springmvc以及基于servlet框架的控制 ...
- mysql报错代码10051_zabbix_server 不能监听端口tcp 10051(示例代码)
rhel6.7下安装zabbix 监控,zabbix服务启动但不能监听10051端口 安装环境rhel6.7, 监控软件版本zabbix-2.2.1 mysql版本5.1 安装配置全部OK, 1.st ...
- java监听微信_fastweixin: 极其方便的实现微信公众平台服务端开发,2行代码完成服务器绑定,3行代码实现用户消息监听...
fastweixin 作者:peiyu 快速搭建微信公众平台服务器 简单封装了所有与微信服务器交互的消息:文本消息.图片消息.图文消息等等 提供了基于springmvc以及基于servlet框架的控制 ...
- 基于Redisson实现的延时队列RedissonDelayedQueue实现websocket服务端心跳监听
简介 基于Redis的Redisson分布式延迟队列(Delayed Queue)结构的 RDelayedQueue. Java对象在实现了RQueue接口的基础上提供了向队列按要求延迟添加项目的功能 ...
- 一行代码实现Okhttp,Retrofit,Glide下载上传进度监听
2019独角兽企业重金招聘Python工程师标准>>> 发表上篇文章 我一行代码都不写实现Toolbar!你却还在封装BaseActivity? 已是一个月前的事情~ 上篇文章的研究 ...
- canal 监听不到数据变化_数据的异构实战(二)手写迷你版同步工程
点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 上一期讲到了通过canal订阅mysql的binlog日志并且转换为对象,那么这一次我们将 ...
最新文章
- 数据结构与算法(6-4)线索二叉树
- 使用keras构建LSTM分类器
- InstallShield打包设置相对路径
- git恢复到上次提交
- Redis五种数据结构详解
- 【收藏】keepalived配置文件解读
- 认证(登录)功能实现
- jekenis父子结构项目打包_maven 父子工程打包 并且上传linux服务器
- go 监测tcp 连接断开_TCP三次握手和四次挥手以及11种状态
- 前端调用后端接口的错误(400)
- java学习-BeanUtils给对象的属性赋值
- 俞敏洪辟谣“周末暑假不能上课”:人生已经不易 为何还要捅刀
- 3.性能测试通过标准
- 美国邮政编码ZIP Code(转载)
- MATLAB | 怎样拥有精致的圆角半透明图例?
- 唐巧的《iOS开发进阶》 - 读后感
- 湖南大学计算机考研科目2020,2020湖南大学计算机与软件工程考研初试科目、参考书目、录取情况全解析...
- html模态框常见问题,模态框无法弹出的问题
- 程序员通常都有哪些业余爱好
- mac玩rust用什么画质_Steam Mac/Windows游戏性能、画质对比