Доброго времени суток! Столкнулся со следующей проблемой - есть сервер с RabbitMQ, в него периодически публикуются json-пакеты, которые затем забираются другим сервером php-скриптом, отрабатывающим на кроне раз в минуту. Обратил внимание, что через определенный промежуток времени (в зависимости от текущей нагрузки на проект) количество каналов переваливает за несколько десятков тысяч, после чего сервер с RabbitMQ благополучно падает и отказывается принимать входящие соединения.
В своем коде я использую вызовы:
$channel->close();
$connection->close();
Но похоже что толку от закрытия канала никакого. Как побороть данную проблему?
Заранее спасибо!
Ниже привожу часть своего кода, в котором предположительно возникает проблема:
$connection = new AMQPStreamConnection($server, $port, $login, $pass);
$channel = $connection->channel();
$channel->queue_declare('q_output', false, true, false, false);
while($msg = $channel->basic_get("q_output", true)) {
// тут полезная нагрузка
}
$channel->close();
$connection->close();