Должен ли я отписаться от недолговечного абонента JMS Topic?

Я пишу Java JMS-приложение, которое отвечает за взаимодействие между узлами кластера. Обмен сообщениями осуществляется путем публикации \ подписки с использованием темы. TopicSubscriber создается путем вызова TopicSession.createSubscriber(topic, null, true), что означает, что он не является долговременным подписчиком. Сейчас я реализую метод "release", который должен отписаться от подписчика (а затем закрыть соединение и т. Д.). Я видел, что TopicSession.unsubscribe (String name) актуален только для постоянных подписчиков, так как мне отписаться от недолговечных подписчиков? Это необходимо?

1 ответ

Нет, вам не нужно выдавать TopicSession.unsubscribe() для недлительной подписки. Закрытие потребителя удалит подписку у провайдера JMS. Вы также можете сделать Session.Close() или же Connection.Close() удалить подписку у провайдера JMS.

В вашем Release метод просто закрыть подписчик или сеанс или соединение.

Отказаться от подписки требуется только для длительных подписок.

Другие вопросы по тегам