igoryan-909/yii2-resque

Yii2的队列组件。

安装: 195

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

类型:yii2-extension

dev-master 2017-04-04 22:53 UTC

This package is not auto-updated.

Last update: 2024-09-20 20:16:07 UTC


README

为Yii2简化的php-resque组件。

安装

安装此扩展的首选方式是通过composer

运行以下命令之一

php composer.phar require --prefer-dist igoryan-909/yii2-resque "*"

或者在您的composer.json文件的require部分添加以下内容

"igoryan-909/yii2-resque": "*"

to the require section of your composer.json file.

使用方法

设置配置

'controllerMap' => [
    'resque' => [
        'class' => 'ivanoff\resque\controllers\ResqueController',
    ],
],

启动守护进程

php yii resque/listen queue_name

添加工作类

class MyJob extends Job
{
    public function setUp()
    {
        # Set up environment for this job
    }
    
    public function perform()
    {
        # The arguments which given in resque enqueue method are available in $this->args
    }
    
    public function tearDown()
    {
        # Remove environment for this job
    }
}

添加工作

$resque = new Resque([
    'redis' => new Connection([
        'hostname' => 'xxx.xxx.xxx.xxx',
    ]),
]);

$token = $resque->enqueue('queue_name', Job::className(), ['arg' => 'val'], true);

检查工作状态

$status = (new JobStatus([
    'redis' => new Connection([
       'hostname' => 'xxx.xxx.xxx.xxx',
    ]),
    'id' => $token
]))->get();

或通过其redis从resque对象获取状态

$resque->status($token)->get()