欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP-Resque用法

程序员文章站 2022-03-03 16:34:36
...
PHP-Resque用法

PHP-Resque用法

PHP-Resque是PHP对Resque的扩展库,可以使PHP也能进行使用Resque,Resque是基于Redis开发的后台进程系统,相较其它的Queue系统, Resque的设计是非常简洁,充分利用Redis的特性。

一、安装 php-resque

进入项目根目录,composer 安装 php-resque

composer require chrisboulton/php-resque

二、常用方法

1、连接 redis

// setBackend($server, $database = 0)
Resque::setBackend('127.0.0.1:6379');

2、向队列中添加工作

// enqueue($queue, $class, $args = null, $trackStatus = false)
$token = Resque::enqueue('default', 'My_Job', ['name'=>'test'], true);

3、查看工作状态

$status = (new Resque_Job_Status($token))->get();

4、停止(移除)工作

(new Resque_Job_Status($token))->stop();

三、常驻任务处理队列(示例:worker.php)

// 处理 default 队列;也可以填 *,代表所有队列
$worker = new Resque_Worker('default');
// LOG_NONE 不写日志, LOG_NORMAL 普通,LOG_VERBOSE 详细
$worker->logLevel = Resque_Worker::LOG_VERBOSE;
// 队列处理时间间隔,单位:秒
$worker->work(5);

注:worker.php 要以命令行的方法执行,并长驻后台,/usr/local/php/bin/php /xxx/xxx/worker.php

四、处理工作的类

class My_Job
{
    /**
     * 前置操作
     * @return void
     */
    public function setUp()
    {
        // ... Set up environment for this job
    }
    /**
     * 消费队列
     * @return void
     */
    public function perform()
    {
        // execute a job
    }
    /**
     * 后置操作
     * @return void
     */
    public function tearDown()
    {
        // ... Remove environment for this job
    }
}

推荐教程:《PHP教程

以上就是PHP-Resque用法的详细内容,更多请关注其它相关文章!

相关标签: php