Laravel:命令总线不会异步

时间:2015-09-29 03:35:28

标签: php laravel-5 laravel-5.1

我使用Laravel 5.1的命令总线在后台进程上运行特定任务(上传文件,验证然后将其记录在我的数据库中)。

我尝试上传像1.4kb(40行)这样的小型csv文件并且有效。

当我尝试上传1MB csv文件(20000行)时,我注意到它没有在后台进程中运行。它等待作业完成,然后加载正确的页面,这不是我想要的方式:(。

我认为我遵循Laravel文档,介绍了如何通过php artisan make:command PurchasePodcast --queued在异步进程中运行命令总线。

Reference

我的代码:

def multiply(m: Int)(n: Int): Int = m * n

我错过了什么吗?请帮忙。

2 个答案:

答案 0 :(得分:0)

在Laravel 5.1中,命令总线被作业替换。您正在使用Laravel 5.1并遵循5.0文档。

答案 1 :(得分:0)

命令总线在Laravel 5.1中被重命名为jobs,并且“命令”内容不会破坏5.0应用程序。作业可以异步调度,也可以排队等待异步处理。

基本上,您希望从命令/作业类中删除ShouldQueue接口和InteractsWithQueue特征。正如您可能已经收集的那样,这会告诉调度程序对它们进行排队,而不是同步处理它们。