私はpheanstalk(バージョン:3.0.2)のキューに問題があります。キュー内に0〜10kのジョブがあり、時にはこのキュー内のデータを検索して次のジョブを追加する必要があります。だから私は存在しないジョブを追加したい。pheanstalk fast jobを検索
Pheanstalkクラスでは、ジョブを検索する方法が表示されず、このジョブを「current-jobs-reserved」に移動しません。
私は、予約されていないジョブだけでデータを読み取る高速な方法が必要です。
私の例:
public function searchId($id)
{
$pheanstalk = $this->getPhenstalk();
while ($job = $pheanstalk->reserveFromTube(self::TUBE)) {
$json = $job->getData();
$data = json_decode($json, true);
if($data['id'] == $id){
return true;
}
$pheanstalk->release($job);
}
return false;
}
しかしrelase()は、多くの時間を必要としています。私はそれをどのようにすることができますか?