首页 > 解决方案 > Laravel 8,如何在后台运行作业(脚本)?

问题描述

标签: phplaravellaravel-8background-process

解决方案


默认情况下,该.env文件具有QUEUE_CONNECTION=sync.

意思是,sync连接使用主线程来执行任务。因此,它必须先完成,然后再继续下一行代码。

要使任务在后台运行,以便您的主应用程序线程不会阻塞并且您可以更快地处理您的客户端请求,请尝试使用不同的连接,即database.

  • 为此,只需更改QUEUE_CONNECTION=database您的.env文件。

您可以php artisan queue:listen在本地计算机设置上运行以在任务进入时对其进行处理。

注意:在生产服务器上,设置更强大的功能以在进程失败时自动重新启动进程可能会更方便。主管配置


推荐阅读