.当排队作业正在从队列中拉出, 这个[CallQueuedListener](https://github.com/laravel/framework/blob/5.8/src/Illuminate/Events/CallQueuedListener.php#L90-L104)会检查它是否在使用InteractsWithQueuetrait, 如果是的话,框架会将底层的“队列jobs”实例注入到内部。 这个“任务” 实例类似于一个包装了真正的Job类...
.当排队作业正在从队列中拉出, 这个[CallQueuedListener](https://github.com/laravel/framework/blob/5.8/src/Illuminate/Events/CallQueuedListener.php#L90-L104)会检查它是否在使用InteractsWithQueuetrait, 如果是的话,框架会将底层的“队列jobs”实例注入到内部。 这个“任务” 实例类似于一个包装了真正的Job类...
.当排队作业正在从队列中拉出, 这个 [CallQueuedListener](https://github.com/laravel/framework/blob/5.8/src/Illuminate/Events/CallQueuedListener.php#L90-L104) 会检查它是否在使用 InteractsWithQueue trait, 如果是的话,框架会将底层的“队列jobs”实例注入到内部。 这个“任务” 实例类似于一个包装了真正的...
这个神奇的骚操作的出现是因为“InteractsWithQueue”这个trait。.当排队作业正在从队列中拉出, 这个[CallQueuedListener](https://github.com/laravel/framework/blob/5.8/src/Illuminate/Events/CallQueuedListener.php#L90-L104)会检查它是否在使用InteractsWithQueuetrait, 如果是的话,框架会将底层的“队列jobs”实例...
.当排队作业正在从队列中拉出, 这个[CallQueuedListener](https://github.com/laravel/framework/blob/5.8/src/Illuminate/Events/CallQueuedListener.php#L90-L104)会检查它是否在使用InteractsWithQueuetrait, 如果是的话,框架会将底层的“队列jobs”实例注入到内部。
如果您不在乎您的工作,可以简单地在工作中设置deleteWhenMissingModels属性,Laravel 将 [忽略丢失的模型](《Laravel 中文文档》7.x/queues#ignoring-missing-models),它不会将作业发送到 failed_jobs 表。 这可能是一个极端的情况,但是根据您要处理的作业数量的多少,这确实有助于保持环境清洁。
// 任务执行失败后发送邮件通知给相关人员publicfunctionfailed(Throwable $exception){Mail::to($this->service->developer->email)->send(...);} 执行失败的任务会存储到failed_jobs数据表中。对于执行失败的任务,可以通过 Artisan 命令queue:retry进行再次重试。具体细节参考官方文档即可,这里不再演示了。
然后执行laravel提供的方法找回队列, 找回来的队列会重重新放到jobs表中.是不是我说的这样我们可以试试. //执行如下命令找回处理失败的队列 php artisan help queue:retry后面可以跟failed-table表的id,如果跟id的话, 只会回复对应id值的失败队列到jobs表中, 如果跟all的话全部失败的队列都会重新放回jobs表...
For instance, to retry a failed job that has an ID of 5, issue the following command:php artisan queue:retry 5To retry all of your failed jobs, execute the queue:retry command and pass all as the ID:php artisan queue:retry all
To retry all of your failed jobs, execute the queue:retry command and pass all as the ID:php artisan queue:retry allIf you would like to delete a failed job, you may use the queue:forget command:php artisan queue:forget 5To delete all of your failed jobs, you may use the queue:...