我正在使用Beanstalkd和laravel來處理隊列作業。如果作業已在隊列中,我如何防止添加相同的作業。我用Beanstalkd 3.1使用laravel 5.3如果作業已經在laravel隊列中,請阻止類似的隊列作業
0
A
回答
0
沒有這樣的概念來阻止作業成爲消息隊列的一部分。 只是你不能這樣做。
請確保您的代碼是以不會處理重複的方式編寫的。如果您仍然需要解決某些問題,可以查看Redis的SortedSet,並使用它來永久存儲您的工作。
0
有一種變通方法解決方案,您可以嘗試添加以下代碼之前調度隊列
$queue = \DB::table(config('queue.connections.database.table'))->first();
if($queue){
$payload = json_decode($queue->payload,true);
if($payload['displayName'] == 'App\Jobs\ProcessReport'){
\flash('The report in process','info');
return back()->withInput();
}
}
//dispatch the queue
ProcessReport::dispatch();
相關問題
- 1. 如果已經入隊,請停止Hangfire作業排隊
- 2. Laravel隊列失敗作業
- 3. 修改隊列中的作業Laravel
- 4. PowerShell作業隊列
- 5. Laravel 5.3隊列作業不起作用
- 6. nodeJS中的作業隊列
- 7. node.js中的作業隊列
- 8. 作業隊列和就緒隊列
- 9. Laravel 4.2隊列 - 強制作業失敗
- 10. 隊列作業不推入laravel v5.4
- 11. 如何檢索作業隊列中的預定作業列表?
- 12. 如何在android的作業隊列中管理作業?
- 13. jQuery - 輪詢作業隊列
- 14. 玩框架作業隊列
- 15. oozie中Hive操作的作業隊列
- 16. 如何從應用程序的「延遲作業」隊列中「消耗」作業,除了「生成」作業隊列
- 17. 在centOS中的PHP隊列作業
- 18. 在Laravel 4中刪除工作外的隊列作業?
- 19. 如何從Laravel的作業ID中獲取排隊作業?
- 20. 指示隊列中作業的結束?
- 21. 在Laravel 5.3中,如何在將作業發送到作業隊列後獲取作業ID?
- 22. 在Laravel 5.5中,如何在將作業分派到作業隊列後獲取作業ID?
- 23. 隊列中的多線程作業 - 作業太多?
- 24. 分配工作負載作業隊列
- 25. 刪除Laravel中的排隊作業5
- 26. 隊列:如何處理相關作業
- 27. 添加作業到隊列中KUE
- 28. delayed_job。從隊列中刪除作業
- 29. 在隊列之間移動Resque作業
- 30. 隊列在C++ ..家庭作業
你有一個率低。重要的是,您必須使用投票下方發佈答案左側的勾號標記接受的答案。這會增加你的速度。通過查看此鏈接瞭解其工作原理:http://meta.stackoverflow.com/questions/5234/how-does-accepting-an-answer-work#5235 – Pentium10