Я читаю события из кластера Azure EventHub синхронно с помощью метода receiveFromPartition в классе EventHubConsumerClient.
Я создаю клиент один раз следующим образом: используйте ScheduledExecutorService для получения событий каждые 1,5 секунды через:
IterableStream<PartitionEvent> receivedEvents = eventHubConsumerClient.receiveFromPartition(
partitionId, 1, eventPosition);
Эквивалент logi c в V3 SDK работал нормально (с использованием PartitionReceivers), но теперь я вижу OOM в своей JVM.
Запуск профилировщика для локальной версии журнала c Я вижу, что большая часть кучи (90%, в основном в OG) занята byte[]
s, на которые ссылается org.apache.qpid.proton.codex.CompositeReadableBuffer
. Этот шаблон отсутствует, когда я профилирую V3 logi c.
Что могло вызвать утечку сообщений AMQP здесь, нужно ли мне дальше взаимодействовать с SDK, например закрыть соединение, которое я Я не в курсе после каждого звонка?
Любые советы были бы очень признательны, спасибо!