Yii yii2-queue 基本使用

1. 安装:php

   执行命令sql

php composer.phar require --prefer-dist yiisoft/yii2-queue
  或者添加
"yiisoft/yii2-queue": "~2.1"

  到 composer.json 文件数据库

2.配置:json

  yii2-queue 可选驱动有  DB, Redis, RabbitMQ, AMQP, Beanstalk and Gearman.  也可配置成 syncyii2

 

DB 队列:app

首先配置 consolecomposer

'controllerMap' => [ // ...
        'migrate' => [ 'class' => yii\console\controllers\MigrateController::class,
            'migrationPath' => null,
            'migrationNamespaces' => [ // ...
                'yii\queue\db\migrations', ], ], ],

能够在console中 使用数据库迁移工具迁移数据库frontend

 

配置gii yii

'modules' => [ 'gii' => [ 'class' => 'yii\gii\Module',
            'generators' => [ 'jobs' => yii\queue\gii\Generator::class, ], ] ],

能够经过gii 建立job文件工具

 

取一个名字配置到 components 做为一个组件 

'queue' => [ 'class' => yii\queue\db\Queue::class, ],
 'mutex' => yii\mutex\MysqlMutex::class,

 

  使用:

 经过 gii建立一个job类

namespace frontend\jobs; /** * Class TestJob. */
class TestJob extends \yii\base\BaseObject implements \yii\queue\JobInterface { public $prop1; public $prop2; /** * @inheritdoc */
    public function execute($queue) { } }

 

push任务

Yii::$app->queue->push(new TestJob( [ 'prop1' => 1,
                'prop2' => 2, ] ));
相关文章
相关标签/搜索