国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

RabbitMQ中消費(fèi)時(shí),是不是能使用異步(如異步http)組件嗎?

z985342160

例:

$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ā)處理這些消息,而不是阻塞等待。

2580 1 0
1個(gè)回答

xiuwang

basic_consume 也是死循環(huán)阻塞的操作,所以無法使用異步http,用curl吧

  • 暫無評(píng)論
年代過于久遠(yuǎn),無法發(fā)表回答
??