2010-01-13 3 views

답변

1

아마도 심장 박동을 느끼지 않으면 무엇을 할 것입니까?

복구 할 수있는 방법이없는 경우 에 하트 비트가 없습니다.

서버에서 클라이언트로 콜백을 사용하는 경우 클라이언트가 손실 된 콜백을 다시 보내도록 서버에 요청할 수있는 방법이 필요합니다. 이는 쉽지 않습니다.

또한 심장 마비가 발생하지 않는다면 모든 종류의 네트워크 지연이있을 수 있으므로 나중에 메시지가 도착하지 않는다는 것을 의미하지는 않습니다. 메시지를 다시 보내면 안전할까요?

심장 박동이 쉽게 비트의 하드 비트가 마음 이 이길하지 않는 경우 수행 할 작업입니다!

+0

하트 비트가 수신되지 않으면 현재 구현이 밀접한 연결입니다. – Benny

1

예. TCP는 물리적 인 연결이 여전히 살아 있다는 것을 보여줄뿐입니다 (즉, 소켓은 라우터 나 OS에 의해 알려지지 않았습니다). 그러나 에 대해에 관해서는 응용 프로그램 가용성에 대해 말할 것입니다. 파이프의 다른 쪽 끝에있는 프로세스가 while(1); 루프에 있고 요청을 처리하지 않으면 실제로 그 프로세스에 연결되어 있지 않습니다.

0

"응용 프로그램 수준"에서 여전히 상대방과 연결되어 있고 응용 프로그램이 여전히 대화 할 수 있다는 것을 알 수있는 좋은 방법입니다. 그렇지 않으면 "상대방"이 "말하기"에 아무 것도 없다는 가정을해야합니다. "상대방이 실제로 35 초 전에 네트워크 연결이 끊어졌습니다"와 분리하기가 어려울 것입니다.