JMS 토픽의 메시지에 메시지 만료를 설정해야합니다. message.setJMSExpiration() 및 producer.getTimeToLive() 메소드의 속성을 설정하여 시도했습니다. 그러나 나는 내가 게시 한 주제에서 여전히 살아있는 메시지를 그렇게 생각하지 않는다.JMS 메시지 만료가 작동하지 않습니다.
만료 시간이 지나면 항목에서 수신하지 않은 메시지를 삭제하는 데 이러한 속성이 사용되는지 여부가 의심 스럽습니까? 또는 특정 가입자가 가입 한 메시지 이후
저는 특정 클라이언트를 식별하기 위해 선택기를 사용했습니다.
위의 속성 중 하나라도 메시지 만료가 충분하지 않은 경우 다른 설정을 사용하여 생산자 측에서 만료되도록해야합니까? JDK 1.6
답장을 보내 주셔서 감사합니다. 그러나 이것은 내가 인터넷을 통해 몇 가지 기사를 읽은 이론입니다. 당신이 말한대로 영구 가입 만 적용했습니다. 내 관심사가 제 고객이기 때문에 제작자가 게시 한 메시지를 놓치지 마십시오. 내 주요 관심사는 내 클라이언트가 오랜 시간 동안 실행되지 않을 때 게시자가 클라이언트가 로그 시간 동안 실행 중이 지 않아 메시지를 만료해야한다는 것입니다. 구독자가 메시지를 구독하지 않은 경우이 많은 시간이 지나면 게시자가 메시지를 만료하도록 알려주는 방법은 무엇입니까? –
당신은 두 가지를 말하고 있습니다 - (1) 클라이언트는 메시지를 놓치지 않아야하고 (2) 메시지는 얼마 후에 만료되어야합니다 - 서로 모순됩니다. 만기를 설정하고 만기 시간 내에 클라이언트가 재개되지 않으면 클라이언트는 해당 서적을 놓치게됩니다. 어쨌든 게시자 쪽에서 게시하기 전에 메시지의 만료 시간을 설정해야합니다. 만료 시간이 지나면 메시징 공급자는 메시지를 삭제합니다. – Shashi
내 관심사에서, 클라이언트는 메시지가 만료 될 때까지 어떤 메시지도 놓치면 안된다. 보안상의 이유로. 만료 시간 내에 클라이언트가 구독을 시작한 경우 아무런 문제가 발생하지 않습니다. 그래서 게시자 측에서 만료 시간을 설정하여 시도합니다. –