attempts() > 3) {} //有效消息到达消费者时可能已经不再需要执行了 /* if(!$this->checkJob($data)){ $job->delete(); return; }*/ //执行业务处理 if($this->doJob($data)){ $job->delete();//任务执行成功后删除 }/*else{ //检查任务重试次数 if($job->attempts() > 3){ Log::channel('test')->record('234:'.$data); $job->delete(); } }*/ // 也可以重新发布这个任务 //$job->release($delay); //$delay为延迟时间 } /** * 根据消息中的数据进行实际的业务处理 */ private function doJob($data) { // 实际业务流程处理 try { $data['status'] = rand(999); Log::channel('test')->record(json_decode($data)); }catch (\Exception $exception){ Log::channel('test')->record('345'.$exception->getMessage()); } return true; } //任务失败执行的方法 public function failed($data) { // ...任务达到最大重试次数后,失败了 } }