我已在共享主机“Hostgator”上部署了我的应用程序,我已成功通过 ssh 访问,但是我无法安装主管来管理队列处理,命令
sudo apt-get install supervisor
总是返回错误,因此我联系了支持人员,并被告知我无法使用共享主机“云”计划发出 sudo
命令,我必须转移到 VPS 或专用,但目前我无法转移到。
我的问题是:是否可以使用任何替代方法来管理没有主管的队列处理或其他方法来解决这个问题?有人经历过这个并找到解决方案吗?
我想用命令
php artisan queue:work
每天早上做一个 cron 工作,但这是一个好的做法吗?
预先感谢任何帮助。
对于正在经历类似事情的任何人,我通过每小时运行一次的 cron 作业来管理它,但是您必须迁移失败的作业表以确保失败的作业得到处理并且不会停止队列处理,即使这是不理想,但它以某种方式起作用。理想的解决方案是考虑 VPS 托管或将 Laravel Forge 与 DigitalOcean 混合,例如 laravel 文档中提到的。
干杯。
打开 Laravel 应用程序的 App\Console\Kernel.php 文件。您可以在此处定义应安排的命令。默认情况下,Laravel 已经包含一个计划方法供您定义命令:
受保护的功能时间表(Schedule $schedule) { $schedule->command('queue:work --queue=default --sleep=3 --tries=3 --timeout=90')->everyMinute(); }
之后你可以在生产环境中设置 crontab ,它会自动进入队列