这道题是我对segmentfault社群文章的一个回复,也是一个典型问题,相信你们会遇到。
这个问题其实考察的是你们对yii2-queue这个库存在的认知,对,它是一个组件,那也就是说咱们能够在yii2中创建一个queue组件,也能够创建N个。php
所以当咱们想在yii2应用中部署多个yii2-queue队列的时候,就变成了部署多个yii2-queue组件。html
官方也是这样提供的,假设咱们如今要在本身的yii2应用中使用两个队列,一个是文件类型,一个是redis类型,则配置以下redis
return [ 'bootstrap' => [ 'queue1', 'queue2', ], 'components' => [ 'queue1' => [ 'class' => \yii\queue\file\Queue::class ], 'queue2' => [ 'class' => \yii\queue\redis\Queue::class ], ], ];
这样就能够了,固然对于这两个组件的使用,则要以下形式bootstrap
Yii::$app->queue1; Yii::$app->queue2;
就是组件的使用方法。segmentfault
当咱们要调用worker来执行的时候,在命令行也须要两个命令。微信
php yii queue1/listen;// or queue1/run php yii queue2/listen;// or queue2/run
就这样就完成了。yii2
阿北哥ya
这里有500+节yii2原创视频等你来学。app