php中l(wèi)aravel調(diào)度執(zhí)行錯(cuò)誤解決方法
我們說(shuō)laravel框架的功能性比較明確,作為全棧框架在代碼的運(yùn)行上是比較簡(jiǎn)潔的。在對(duì)laravel框架安裝完成后,我們可以就其中的一些操作為大家展現(xiàn)。本篇要帶來(lái)的是在laravel中的調(diào)度,分為兩種不同目錄的情況討論,同時(shí)把可能在調(diào)度中會(huì)出現(xiàn)的錯(cuò)誤情況,單獨(dú)為大家呈現(xiàn)并解決。
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
因?yàn)槊畲藭r(shí)本身就已將和artisan同目錄,所以不需要再去指定artisan位置(指定也可以),直接運(yùn)行上方命令即可。
3、laravel調(diào)度任務(wù)沒(méi)有執(zhí)行的問(wèn)題
調(diào)度任務(wù)命令如下:
$schedule->command(’emails:send’)->withoutOverlapping();
說(shuō)明:
withoutOverlapping 這個(gè)命令的作用就是當(dāng)一個(gè)進(jìn)程還沒(méi)跑完,不會(huì)開(kāi)啟新的進(jìn)程。其機(jī)制就是開(kāi)啟明亮的時(shí)候會(huì)在項(xiàng)目的storage/framework/cache目錄中添加一個(gè)文件,如果進(jìn)程卡住或者未進(jìn)行完成的時(shí)候,這個(gè)文件就會(huì)陷入死循環(huán),一直執(zhí)行該進(jìn)程,等到進(jìn)程執(zhí)行完畢之后,會(huì)刪除相對(duì)應(yīng)的緩存文件,開(kāi)始下一個(gè)進(jìn)程。
簡(jiǎn)單理解就是加上withoutOverlapping 會(huì)引起阻塞,只有完成的任務(wù)才會(huì)繼續(xù)下面的進(jìn)程。
內(nèi)容擴(kuò)展:
解決Laravel 任務(wù)調(diào)度不執(zhí)行問(wèn)題
如果你按照官方手冊(cè)上的配置:
* * * * * php /path/to/artisan schedule:run 1>> /dev/null 2>&1
發(fā)現(xiàn)任務(wù)沒(méi)有按照預(yù)期的執(zhí)行,可能是你環(huán)境變量問(wèn)題,
按照下面的修改你的Cron任務(wù)配置即可;
* * * * * cd /path/to && /usr/local/bin/php artisan schedule:run >> /dev/null 2>&1
其中 /usr/local/bin/php 是你PHP的絕對(duì)路徑。
到此這篇關(guān)于php中l(wèi)aravel調(diào)度執(zhí)行錯(cuò)誤解決方法的文章就介紹到這了,更多相關(guān)php之laravel調(diào)度執(zhí)行及出錯(cuò)解決內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. PHP使用Swagger生成好看的API文檔2. ASP.NET MVC使用jQuery ui的progressbar實(shí)現(xiàn)進(jìn)度條3. Python3 json模塊之編碼解碼方法講解4. Python 制作查詢商品歷史價(jià)格的小工具5. Python 如何調(diào)試程序崩潰錯(cuò)誤6. Python 利用Entrez庫(kù)篩選下載PubMed文獻(xiàn)摘要的示例7. ASP基礎(chǔ)知識(shí)VBScript基本元素講解8. python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)9. Python sublime安裝及配置過(guò)程詳解10. Python 合并拼接字符串的方法

網(wǎng)公網(wǎng)安備