Yii yii2-queue 基本使用

Posted apper

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Yii yii2-queue 基本使用相关的知识,希望对你有一定的参考价值。

1. 安装:

   执行命令

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

  到 composer.json 文件

2.配置:

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

 

DB 队列:

首先配置 console

‘controllerMap‘ => [
        // ...
        ‘migrate‘ => [
            ‘class‘ => yiiconsolecontrollersMigrateController::class,
            ‘migrationPath‘ => null,
            ‘migrationNamespaces‘ => [
                // ...
                ‘yiiqueuedbmigrations‘,
            ],
        ],
    ],

可以在console中 使用数据库迁移工具迁移数据库

 

配置gii 

‘modules‘ => [
        ‘gii‘ => [
            ‘class‘ => ‘yiigiiModule‘,
            ‘generators‘ => [
               ‘jobs‘ => yiiqueuegiiGenerator::class,
            ],
        ]

    ],

可以通过gii 创建job文件

 

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

‘queue‘ => [
            ‘class‘ => yiiqueuedbQueue::class,
        ],
 ‘mutex‘ => yiimutexmysqlMutex::class,

 

  使用:

 通过 gii创建一个job类

namespace frontendjobs;

/**
 * Class TestJob.
 */
class TestJob extends yiiaseBaseObject implements yiiqueueJobInterface
{
    public $prop1;

    public $prop2;

    /**
     * @inheritdoc
     */
    public function execute($queue)
    {

    }
}

 

push任务

 Yii::$app->queue->push(new TestJob(
            [
                ‘prop1‘ => 1,
                ‘prop2‘ => 2,
            ]

        ));

 

以上是关于Yii yii2-queue 基本使用的主要内容,如果未能解决你的问题,请参考以下文章

yii2.0 中的队列

如何使用yii2的缓存依赖特性

Yii2片段缓存详解

yii中的基本隐藏字段

yii使用之缓存

Yii 2 —— 基于Mustache的页面多语言解决方案