我正在尝试使用Laravel Queues使用数据库驱动程序发送电子邮件,我已经配置了它,运行“jobs”表的迁移,当我运行它时:
Mail::to($user->email)->queue(new CompraRealizadaAdmin(Cart::content(), $monto_descuento, $envio, $user_array, $direccion, $compra));
在“jobs”表上添加了一条记录,但是,如何在数据库表上运行队列?我明白,为了在添加它时触发它,我需要运行命令{{ 1}},或者如果我需要运行所有仍在队列中的那些,我将使用php artisan queue:listen
。
但是如何在不需要打开终端的情况下运行命令并保持打开直到它完成...?
我想创建一个计划并每分钟运行一次,然后执行代码:php artisan queue:work
但这不起作用。
有什么想法吗?
答案 0 :(得分:0)
根据您的需要,偏好和目标操作系统,您可以使用
或类似的服务来管理您的队列工作进程。
事实上,Laravel文档非常详细地解释了how to install and configure supervisord。
答案 1 :(得分:0)
这取决于您为Ubuntu或Linux工作的操作系统,您可以使用supervisor
和hup
。
请注意,每次重新启动计算机时都必须运行hup
。
这就是你如何运行这个命令。 hup php artisan queue:work
。
希望这有帮助