TypechoJoeTheme

404

think-queue队列

安装

composer require topthink/think-queue

配置 config/queue.php

<?php return [

'default'     => 'sync',
'connections' => [
    'sync'     => [
        'type' => 'sync',
    ],
    'database' => [
        'type'       => 'database',
        'queue'      => 'default',
        'table'      => 'jobs',
        'connection' => null,
    ],
    'redis'    => [
        'type'       => 'redis',
        'queue'      => 'default',
        'host'       => '127.0.0.1',
        'port'       => 6379,
        'password'   => '',
        'select'     => 0,
        'timeout'    => 0,
        'persistent' => false,
    ],
],
'failed'      => [
    'type'  => 'none',
    'table' => 'failed_jobs',
], ];

app下创建 job/Test.php

<?php namespace appjob;

use thinkqueueJob;

class Test {


public function fire(Job $job, $data)
{   

    if ($job->attempts() > 3) {
        Log::write('Test执行失败了');
        $job->delete();
    } else {
        // 你的数据操作
       
    }
}

}

调用

use thinkfacadeQueue; /延时队列/

Queue::later(60, 'appjobTest', [name=>'sb'], 'Test'); 
//参数1:时间,,参数2:路径,参数3:业务参数,参数4:队列名称

//php think queue:listen --queue Test执行队列

//nohup php think queue:listen --queue Test& 不以守护进程执行

赞 · 0
评论 (0)

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

标签云

暂无标签