2011-10-17 3 views
1

서비스에 다른 메시지가 전송되지 않으면 세션을 활성 상태로 유지하기 위해 '터치'메시지를 외부 서비스로 보내는 X 하트 비트 메커니즘을 구현해야합니다. ScheduledExecutorService 또는 Timer와 같은 것을 사용하여 보았습니다. 그러나 필요하지 않을 때 하트 비트를 보내지 않도록 세션에서 다른 메시지를 보낼 때 타이머/지연을 재설정 할 수있는 무언가를 찾아야합니다.자바 하트 비트 프레임 워크

일반적인 하트 비트 기능처럼 보이기 때문에 이러한 유형의 하트 비트 메커니즘에 대해 알려진 프레임 워크가 있습니까? 아니면, 누구든지 표준 구성 요소를 기반으로 내 문제에 대한 효율적인 솔루션을 만들려면 올바른 방향으로 나를 가리켜 주시겠습니까?

+1

이렇게하면 기존 프레임 워크가 너무 구체적입니다. 게다가, 당신의 작업이 그리 어렵지 않은 것 같아요.'Timer '를 사용하여 외부 서비스를 호출하는 것을 재검토 할 수 있습니다. 작동하게 만들 수 있고'reset' 메소드가 있습니다. –

+0

마지막 타이머 이후에 일정한 타이머 호출에 대해 하트 비트를 건너 뛰는 것만으로 충분하지 않습니까? 또는 추가 하트 비트 메시지를 보낼 때 어떤 위험이 있습니까? 내 내장은 여분의 하트 비트가 발생하는 것보다 타이머와 통신하기 위해 적절한 동기화를 수행하는 데 더 많은 오버 헤드를 도입 할 것이라고 말합니다. – millimoose

답변

0

제가 볼 수있는 가장 쉬운 방법은 직접 작성하는 것입니다. '터치'메시지를 보낼 수있는 개체를 만든 다음 계속해서 수행 할 데몬 프로세스를 만듭니다.

이 모든 것은 POJO와 ThreadProcess 클래스로 수행 할 수 있습니다. 행운을 빕니다!

+0

예,'ScheduledExecutorService'와 함께 가서 다음 하트 비트로 지연을 재설정하는'reset' 메소드를 구현했습니다. 모든 제안 및 의견에 감사드립니다. – hgus1294

관련 문제