例:
$channel->basic_qos(0, 5, false);
$channel->basic_consume('name', '', false, false, false, false, function(AMQPMessage $message) {
echo 'Rec:', $message->getBody(), "\n";
$http = new Http();
$http->get('http://www.baidu.com', function($response) use ($message) {
echo 'Resp:', $response->getBody(), "\n";
$message->ack();
});
});
目前發(fā)現(xiàn)在這樣使用異步http組件,http一直沒有響應(yīng)(請(qǐng)求都沒發(fā)送)。
https://wenda.workerman.net/question/6257
見walkor的回復(fù):consume里是一個(gè)死循環(huán),一直循環(huán)消費(fèi)隊(duì)列的數(shù)據(jù)。因?yàn)榇a一直運(yùn)行在這個(gè)循環(huán)里,workerman永遠(yuǎn)無法得到控制權(quán),就無法把數(shù)據(jù)發(fā)送出去。
我本意是當(dāng)設(shè)置消費(fèi)者的prefetch_count后, 如何可以并發(fā)處理這些消息,而不是阻塞等待。