首頁 > 後端開發 > PHP問題 > PHP-Resque用法

PHP-Resque用法

Guanhui
發布: 2023-03-01 12:52:01
原創
3731 人瀏覽過

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中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板