【发布时间】:2018-01-19 09:17:18
【问题描述】:
我是使用 laravel/lumen 的新手
几个小时前我生成了一个新的流明项目,我正在尝试使用 数据库 驱动程序将作业发送到默认队列。
我的 .env 文件看起来像这样
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=mydb
DB_USERNAME=root
DB_PASSWORD=xxxx
CACHE_DRIVER=file
QUEUE_DRIVER=database
在Queues - Lumen 官方页面之后,我生成了一个迁移以创建 jobs 和 failed_jobs 表。
config/queue.php文件有默认配置
问题:
- 在运行命令
php artisan queue:work之前,我尝试将作业发送到队列Queue::push(new SendEmailJob)但是它会立即运行并且我还没有运行命令php artisan queue:work。 我检查了数据库和表 job 是空的。 - 我运行命令
php artisan queue:work向特定端点发出请求,使用此行Queue::push(new SendEmailJob)或dispatch(new SendEmailJob())之一将作业放入队列 我没有收到任何错误,但作业队列仍然是空的
我做错了什么?
为什么在我运行命令 php artisan queue:work 之前排队处理所有作业?
提前致谢
【问题讨论】:
标签: queue laravel-5.4 jobs lumen lumen-5.4