yiicod / laravel5queue
此包已被弃用,不再维护。作者建议使用yiicod/yii2-jobqueue包。
1.2.0
2018-10-18 12:50 UTC
Requires
- illuminate/encryption: ^5.2
- illuminate/queue: 5.2.*
- jeremeamia/superclosure: ^2.0
- paragonie/random_compat: ^1.2
- sammaye/mongoyii-php7: *
- symfony/process: ~2.3|~3.0
This package is not auto-updated.
Last update: 2022-02-01 12:57:49 UTC
README
分支 1.0 为 php 5.6 分支 master 为 php 7.0
首先,将laravel5queue组件添加到Yii配置(console和main)中,如下所示
'preload' => ['laravel5queue'], 'components' => ['laravel5queue' => ['class' => 'yiicod\laravel5queue\Laravel5Queue']]
以及控制台命令如下
'queueWorker' => ['class' => 'yiicod\laravel5queue\commands\WorkerCommand'],
注意:组件需要"mongodb"组件来连接mongo数据库
将任务添加到队列
- 对于可调用函数
yiicod\laravel5queue\Laravel5Queue::push(function($job) { <--YOUR CODE HERE--> });
注意:您必须在函数的末尾调用$job->delete();以将其从数据库中删除
- 对于处理器
创建自己的处理器,它实现yiicod\laravel5queue\base\BaseHandlerInterface或继承yiicod\laravel5queue\handlers\Handler,并在执行任务之前运行parent::fire($job, $data)以重新启动数据库连接
yiicod\laravel5queue\Laravel5Queue::push(<--YOUR HANDLER CLASS NAME->>, $data);
注意:$data - 附加到您的处理器的数据
启动工作进程
使用控制台命令运行工作进程守护程序如下
$ php yiic queueWorker start
停止工作进程守护程序
$ php yiic queueWorker stop