Laravel 8 運(yùn)行隊(duì)列處理器

2021-07-15 16:24 更新

Laravel 有一個(gè)隊(duì)列處理器對(duì)新推入隊(duì)列的任務(wù)進(jìn)行處理。通過 Artisan 命令 queue:work 來(lái)啟動(dòng)隊(duì)列處理器。需要注意的是,一旦 queue:work 命令啟動(dòng),將一直保持運(yùn)行,直到它被手動(dòng)停止或你關(guān)閉你的終端:

php artisan queue:work 

技巧:為了讓 queue:work 進(jìn)程永久地在后臺(tái)運(yùn)行,您應(yīng)該使用一個(gè)進(jìn)程監(jiān)視器,如 Supervisor,以確保隊(duì)列 worker 不會(huì)停止運(yùn)行。

請(qǐng)記住,隊(duì)列處理器是長(zhǎng)生命周期的進(jìn)程,并將啟動(dòng)的應(yīng)用程序狀態(tài)存儲(chǔ)在內(nèi)存中。因此,在啟動(dòng)它們之后,代碼庫(kù)中的更改對(duì)其不起作用。因此,在部署過程中,一定要重新啟動(dòng)你的隊(duì)列處理器。此外,請(qǐng)記住,應(yīng)用程序創(chuàng)建或修改的任何靜態(tài)狀態(tài)不會(huì)在任務(wù)之間自動(dòng)重置。

或者,你可以運(yùn)行 queue:listen 命令。在使用 queue:listen 命令時(shí),當(dāng)你想要重新加載更新的代碼或重置應(yīng)用程序狀態(tài)時(shí),你不必手動(dòng)重新啟動(dòng) worker;但是,這個(gè)命令的效率不如 queue:work :

php artisan queue:listen 


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)