laravel调度常见错误情况有什么?如何解决?
这篇文章给大家分享的是laravel调度的相关内容,对新手学习和理解laravel调度会有一点的帮助,文中介绍的非常详细,感兴趣的朋友接下来一起跟随小编学习一下吧。
我们说laravel框架的功能性比较明确,作为全栈框架在代码的运行上是比较简洁的。在对laravel框架安装完成后,我们可以就其中的一些操作为大家展现。本篇要带来的是在laravel中的调度,分为两种不同目录的情况讨论,同时把可能在调度中会出现的错误情况,单独为大家呈现并解决。
1、不在laravel根目录(命令行操作前的地址)
php /www/wwwroot/laravel6/artisan schedule:run
/www/wwwroot/laravel/artisan 解释
/www/wwwroot/laravel6/ 为指定到laravel根目录的路径
artisan 为laravel自带的命令行工具
2、在laravel目录下(命令行操作前的地址)
php artisan schedule:run
因为命令此时本身就已将和artisan同目录,所以不需要再去指定artisan位置(指定也可以),直接运行上方命令即可。
3、laravel调度任务没有执行的问题
调度任务命令如下:
$schedule-> command('emails:send')-> withoutOverlapping();
说明:
withoutOverlapping 这个命令的作用就是当一个进程还没跑完,不会开启新的进程。其机制就是开启明亮的时候会在项目的storage/framework/cache目录中添加一个文件,如果进程卡住或者未进行完成的时候,这个文件就会陷入死循环,一直执行该进程,等到进程执行完毕之后,会删除相对应的缓存文件,开始下一个进程。
简单理解就是加上withoutOverlapping 会引起阻塞,只有完成的任务才会继续下面的进程。
内容扩展:
解决Laravel 任务调度不执行问题
如果你按照官方手册上的配置:
* * * * * php /path/to/artisan schedule:run 1> > /dev/null 2> & 1
发现任务没有按照预期的执行,可能是你环境变量问题,
按照下面的修改你的Cron任务配置即可;
* * * * * cd /path/to & & /usr/local/bin/php artisan schedule:run > > /dev/null 2> & 1
其中 /usr/local/bin/php 是你PHP的绝对路径。
关于laravel调度的常见错误及解决方法就介绍到这,需要的朋友可以参考了解看看,希望本文能对大家有帮助,想要了解更多大家可以关注其它的相关文章。
文本转载自脚本之家
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: laravel调度常见错误情况有什么?如何解决?
本文地址: https://pptw.com/jishu/653184.html