yuyue8/tp_queue

thinkphp queue

v1.0.9 2024-03-13 07:00 UTC

This package is auto-updated.

Last update: 2024-04-13 07:06:33 UTC


README

安装

composer require yuyue8/tp_queue

使用方法

默认使用 Yuyue8\TpQueue\basic\BaseJobs 类执行任务,若需自定义执行类, 只需继承 Yuyue8\TpQueue\basic\BaseJobs 类,并重置 fire 方法, 然后在tp_config配置文件中添加 base_jobs_class 参数,值为自定义类

例如:

'base_jobs_class' => \app\basic\Job::class

然后创建 jobs

php think make:jobs /data/jobs/Sms

jobs 类中,返回 true 表示消费成功,其他返回值表示消费失败,将会进入重新投递,重新投递次数用完依然没有消费成功,删除此消息,并执行 JobsFailListener 事件, JobsFailListener 该事件需要自己创建并注册

使用方法如下:

/** @var Sms $job */
$job = app(Sms::class);
$job->dispatch(['参数1','参数2'...]);
$job->dispatchSece('延迟时间',['参数1','参数2'...]);
$job->dispatchDo('执行方法名',['参数1','参数2'...],'延长时间');

监听任务并执行

&> php think queue:listen
php think queue:listen --queue Sms

&> php think queue:work