2016-10-13 98 views
0

我正在運行Laravel 5.2隊列:失敗作業之間的工作延遲

如何定義失敗作業重試的延遲秒數?也就是說,如果某項工作失敗,並且我的--tries選項設置爲3,則應在這三次嘗試中的每一次之間發生10秒的延遲。

我現在的配置是這樣的:

command=php /home/forge/default/artisan queue:work beanstalkd --daemon --timeout=60 --sleep=10 --quiet --tries=3 --delay=10 --queue="default" 

autostart=true 
autorestart=true 
user=forge 
redirect_stderr=true 
stdout_logfile=/home/forge/.forge/worker-41417.log 

正如你所看到的,我已經有一個--delay = 10,但不起作用。失敗的作業嘗試一個接一個地執行。

有什麼想法?謝謝。

回答

0

可以手動釋放,使5.2文檔中描述:

public function handle(Mailer $mailer) 
{ 
    if (condition) { 
     $this->release(10); 
    } 
}