Laravel 7队列删除()特定作业
我正在研究Laravel/Cache和Laravel/Queue。我有一个Laravel 7队列删除()特定作业,laravel,queue,laravel-queue,Laravel,Queue,Laravel Queue,我正在研究Laravel/Cache和Laravel/Queue。我有一个dispatch()队列作业的函数 UpdateTimeImpJob::dispatch($data)->延迟(Carbon::now()->addSeconds(10)) 但在某些情况下,在调用该作业10秒之前,我需要删除该特定队列作业。不删除任何其他队列作业 如何删除该特定队列作业 这是我的函数@mrhn public function sendTimeImpressions(Request $request) {
dispatch()
队列作业的函数UpdateTimeImpJob::dispatch($data)->延迟(Carbon::now()->addSeconds(10))代码>
但在某些情况下,在调用该作业10秒之前,我需要删除该特定队列作业。不删除任何其他队列作业
如何删除该特定队列作业
这是我的函数@mrhn
public function sendTimeImpressions(Request $request) {
$id = $request->input('IdImpLog');
Cache::put('cacheTimeImpLogId-'.$id, 'cacheTimeImpLogId', 15);
$data = $request->all();
$data['date'] = Carbon::now()->format('H:i:s');
$data['dates'] = Carbon::now()->addSeconds(4)->format('H:i:s');
UpdateTimeImpJob::dispatch($data)->delay(Carbon::now()->addSeconds(2));
return response()->json([
'status'=>true,
'message'=>'Update Time Impressions Success'
]);
}
我的工作案例是从客户端每秒发送post请求,假设其10秒=10个请求。但我只需要处理最后10个请求,就可以将其处理到数据库中
所以,我的逻辑是。我创建了一个缓存来保存数据。并调用队列作业。如果请求只发送1次。因此queque作业正在运行并处理到数据库
当req发送2次或更多次时,只需处理最后一个请求
因此,队列作业已被调用,需要在其之前删除队列作业
对不起,我的英语不好。请帮助,谢谢当在10秒钟之前或作业处理之前再次调用同一用户或同一密钥@mrhn的作业时,希望您删除作业的条件是什么?我可以查看整个代码吗?atm我不知道什么是密钥等。为什么在运行队列作业之前需要删除它?发送到的请求是否具有相同的id?我想弄清楚,这两个请求之间的相关性如何,现在信息是稀疏的,解决方案似乎很奇怪。