2012-05-23 4 views
1

클러스터 노드 간의 통신을 담당하는 Java JMS 애플리케이션을 작성하고 있습니다. 메시지는 주제를 사용하여 publish \ subscribe에 의해 수행됩니다. TopicSubscriber는 TopicSession.createSubscriber (topic, null, true)를 호출하여 만들어지며 영구 가입자가 아닙니다. 이제 구독자의 구독을 취소 한 다음 연결을 닫는 등의 "릴리스"방법을 구현하고 있습니다. TopicSession.unsubscribe (String name)은 영구 가입자에게만 관련이있는 것으로 보았습니다. 그래서 내구성이없는 가입자의 구독을 취소하려면 어떻게해야합니까? 필요합니까?지속성이없는 JMS Topic 가입자의 가입을 취소해야합니까?

+0

Shashi가 맞습니다. 구독을 취소 할 필요는 없습니다. 그것은 라디오를 켜고 끄는 것과 같습니다. 비 영구 가입자가 생성 될 때만 데이터를 받고 그렇지 않은 경우에는 데이터를받습니다. –

답변

2

아니요, 비 영구 가입의 경우 TopicSession.unsubscribe()을 발급 할 필요가 없습니다. 소비자를 닫으면 JMS 공급자에서 구독이 제거됩니다. Session.Close() 또는 Connection.Close()을 수행하여 JMS 제공자에서 등록을 제거 할 수도 있습니다.

Release 방법은 가입자 또는 세션 또는 연결을 닫는 것입니다.

구독 취소는 영구 가입에만 필요합니다.

관련 문제