文章 > PHP框架 > php之laravel调度执行及出错解决

php之laravel调度执行及出错解决

php laravel

头像

小妮浅浅

2021-03-26 09:40:538906浏览 · 0收藏 · 0评论

推荐操作系统:windows7系统、PHP5.6、DELL G3电脑

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 会引起阻塞,只有完成的任务才会继续下面的进程。

以上就是php之laravel调度执行及出错解决的方法,大家在使用laravel框架有遇到这类情况,可以参考本文上面的方法进行处理。更多php学习指路:php框架

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!