как указано в заголовке: факт в том, что когда я запускаю потребительскую задачу, все в порядке. он постоянно потребляет сообщения и отвечает на Mq Broker.
, но через некоторое время функция обратного вызова потребителя больше не может получать сообщение, как будто оно блокируется. результат: сообщение находится в нераспакованном состоянии library
библиотека: php -amqplib / php -amqplib v2.11.0
php код, как показано ниже:
$this->channel->basic_qos(null, 1, null);
$this->channel->basic_consume(
$this->queue_name,
'',
false,
false,
false,
false,
function (AMQPMessage $msg) use ($callback) {
$callback($msg);
}
);
while ($this->channel->is_consuming()) {
$this->channel->wait();
}
the consume callback function:
$callback = function (AMQPMessage $msg, $publishRetry, $publishFailed){
// my question is here, i can't get $msg after a period of time
try{
// do something
// process msg
$msg->delivery_info['channel']->basic_ack($msg->getDeliveryTag());
} catch (\Exception $ex) {
throw $ex;
}
};