這篇文章主要介紹“php之laravel調度執行出錯怎么解決”,在日常操作中,相信很多人在php之laravel調度執行出錯怎么解決問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php之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 會引起阻塞,只有完成的任務才會繼續下面的進程。
到此,關于“php之laravel調度執行出錯怎么解決”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。