4
如果作業失敗,它將被推回隊列。在再次處理工作時,有沒有辦法記住工作班中財產的價值?Laravel隊列 - 記住財產狀態?
例如:
class MailJob extends Job
{
public $tries = 3;
public $status;
public function __construct()
{
$this->status = false; // set to false
}
/**
* Execute the job.
*/
public function handle()
{
$this->status = true;
// Assume job has failed, it went back to the Queue.
// status should be true when this job start processing again
}
}
我想你必須寫一些東西給數據庫以保存狀態並確保作業引用數據庫中的數據。 – haakym
@haakym看起來只有這樣:( –
@haakym的答案是正確的,因爲當你在隊列中輸出一個工作時,它與主要的PHP應用程序分開運行,所以你可以做的只是將失敗的工作記錄在db,並在下次運行期間通過獲取重要信息重新運行失敗的作業 – mchampaneri