일부 모듈로 구성된 응용 프로그램에서 작업 중입니다. 이 모듈 중 하나에서 누군가 주제에 메시지를 게시하는 주제 제작자를 만들었지 만이 모듈은 메시지를 대기열에서 제외 할 주제 소비자가 없습니다. 주제 제작자는 setTimeToLive()
을 사용하여 time-to-live 속성을 300000 밀리 초로 설정합니다.JMS 주제 라이브 시간
나는 어떤 소비자가없는 경우, 메시지가 300000 밀리 초 이내에 만료하고 할당이 해제되는 것을 기대합니다.
응용 프로그램은 톰캣 6.0.36에 배포하며 대기열 및 주제를 처리하기 위해 외부의 ActiveMQ 서버를 사용합니다.
주제 설정 아래의 MBeans 탭에서 Java VisualVM으로 ActiveMQ 모니터링 "Enqueue Count"변수가 증가했지만 time-to-live 설정이이 메시지에 영향을 주는지 이해하지 못합니다. 나는 카운터 "ExpiredCount는"증가 할 전망이지만 여전히
해당 메시지가 여전히 메모리에하거나 해제하는 경우 남아있는 경우 이해하는 방법이 있나요 0으로 고정 된 상태로 유지?
대단히 감사합니다!
편집 :
나는 API는 jvisualvm으로 모니터링 서버와 내부 글래스 피쉬 3.1을 사용하여 넷빈즈 7.3에 J2EE 튜토리얼 예제를 사용하여 일부 테스트 및 모든 작품을 말한다 않았다 같이
은 JMS API 주제 탐색에 대한 메커니즘을 제공하지 않습니다. 메시지는 일반적으로 즉시 표시로 주제에서 사라 :을 소비 할 메시지 사용자가없는 경우에는 JMS 공급자를 제거합니다. 영구 가입을 사용하면 메시지 소비자가 활성화되지 않은 상태에서도 메시지가 주제에 남아있을 수 있지만 메시지를 조사 할 수있는 기능은 없습니다.
글래스 피쉬는 activeMQ 내부에서 사용하기 때문에이 기능이 독립형 ActiveMQ 서버에도 유효하다는 사실을 알고 있습니다.
END 편집.
주제가 지속 가능합니까? – Beryllium
/설정은 어떻게 볼 수 있습니까? –
'topicSession.createSubscriber (...)'또는'topicSession.createDurableSubscriber (...)'를 사용하고 있습니까? – Beryllium