Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP-Resque用法

PHP-Resque用法

Guanhui
Guanhuiasal
2020-06-06 11:03:323691semak imbas

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教程

Atas ialah kandungan terperinci PHP-Resque用法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn