2017-09-25 88 views
0

我正在研究一個功能,我需要檢查beanstalkd隊列中的作業狀態。我已經嘗試了一些東西,但我沒有得到保留用於默認值以外的隊列作業隊列如何使用pheanstalk從laravel中的預留作業中獲取工作數據?

$pheanstalk = \Illuminate\Support\Facades\Queue::getPheanstalk(); 
$pheanstalk->useTube('import-live'); 
$pheanstalk->watch('import-live'); 
while ($job = $pheanstalk->reserve(0)) { 
    var_dump(json_decode($job->getData(), true)); 
} 

這是我都試過了。但是我仍然可以獲取默認隊列的數據。任何人都有關於如何獲取導入實時隊列的數據的想法?或者我在我的系統中運行的任何其他隊列。基本上我想獲得系統中所有隊列的數據。

回答

0

首先 - 確保其他隊列中有作業。

然後,如果您不想從特定運行的「默認」隊列中獲取作業,則可以忽略它。

$job = $pheanstalk 
    ->watch('import-live') 
    ->watch('import-other') 
    ->ignore('default') 
    ->reserve(); 

->useTube('..')put() -ing消息到隊列中時才使用。

相關問題