2016-09-20 1 views
3

TL; DR : 구글 클라우드 HTTPS 부하 분산 장치의 (a "연결 : 연결 유지"로 요청 헤더)는 TCP 스트림을 엽니 다Google 클라우드는 얼마나 오래 지속됩니까? HTTP (S)로드 밸런서는 TCP 연결을 계속 열어 둡니까?

, 시간 (최대의) 주변에 어떤 보장이 있습니다 그 스트림은 백엔드 서버에 계속 열려있을 것입니까?

이상은 :

가 나는 HTTPS 부하 분산 장치 뒤에 이동 http 서버를 배포하고 신속하게 나는 것을 의미하는 내 소켓 연결에 마감을 읽을 공격적인 (10 초)을 설정했기 때문에 많은 문제에 달렸다 내 서버는 종종 후속 요청을 읽는 중 연결을 끊었습니다. 그렇게 명확하게 나는 틀린 짓을하고 있지만, 동시에 서버 소켓에 시간이 지남에 따라 서서히 죽은 연결이 누출 될 가능성을 막기 위해 모든 소켓에 대한 마감 시간을 설정하지 않으려 고합니다. 파일 기술자.

예를 들어로드 밸런서가 5 분 후에 열어 놓은 모든 TCP 스트림을 자동으로 닫으면 좋을 것입니다. 그렇게하면 서버의 읽기 마감일을 6 분 (예 : 6 분)으로 설정할 수 있으며 어떤 요청도 중단하지 않을 것입니다. 예외적 인 경우에만 기한이 적용됩니다 (예 :로드 밸런서의 FIN 패킷이 수신되지 않음). 내 서버에 의해).

답변

2

Google 기업용 지원에서 공식 답변을 얻을 수 없었지만 실험 (다중 시간 tcpdumps 분석)에서 부하 분산기가 ~ 10 분간 유휴 상태 (TCP 데이터가 없음을 의미) 후에 연결을 닫는 것처럼 보입니다. 패킷을 10 분간).

1

here으로 계산 인스턴스에 대한 유휴 TCP 연결이 10 분 후에 시간 초과되어 가설을 확인하는 것으로 보입니다.

관련 문제