Подтверждение предварительно выбранных сообщений в режиме подтверждения клиента - PullRequest
0 голосов
/ 12 августа 2011

Перед нами ситуация, которая объясняется ниже:

  1. У нас есть постоянный подписчик, подписанный на тему. Этот надежный подписчик - Perl-скрипт, который запускается демоном.
  2. Скрипт Perl использует Stomp для подключения к брокеру.
  3. Скрипт perl активируется каждые 5 минут, проверяет сообщения в теме и обрабатывает их в пакетном режиме, предварительно выбирая сообщения.
  4. Абонент использует подтверждение клиента и подтверждает только последнее сообщение пакета.
  5. Мы используем AMQ 5.5 с постоянством kahaDB.

Теперь то, что мы видим,

  • Несмотря на то, что сообщения обрабатываются в пакете, и последнее сообщение подтверждается, количество полетов не уменьшается.
  • Счетчик очереди, счетчик очереди и количество отправлений не совпадают.
  • Файлы журнала не очищаются.

Я понимаю, что файлы журнала будут очищены после того, как ссылки на сообщения будут потеряны или удалены (то есть сообщения будут использованы). Но связано ли это с различными атрибутами количества, которые я вижу по теме?

Кроме того, следует ли ожидать, что число полетов снизится до 0, если клиент выйдет из строя, а затем примет все сообщения после возвращения в живую?

Пожалуйста, дайте мне знать, если есть какая-либо другая причина, которая может заставить файлы журнала остаться.

Спасибо

Hari

1 Ответ

0 голосов
/ 15 августа 2011

На самом деле я отключился сразу после отправки подтверждения.Ожидание квитанции подтверждения перед отключением решило проблему.

...