😀 Jerry/면접 질문

[1분 면접] (Connection, Socket, Read) Timeout 차이점

Jerry_K 2025. 2. 28. 15:23

📌 면접 답변

 Connection Timeout 

  • TCP 3-way-handshake가 일정 시간 내에 완료되지 않을 때 발생
  • 서버의 장애응답 지연으로인해 연결을 맺지 못하는 경우 
  • Connection Timeout은 대부분 방화벽이 발생 원인

 

Socket Timeout

  • Connection Timeout 이후에 발생할 수 있는 Timeout
  • 서버가 데이터를 패킷 단위로 클라이언트에게 전달하는데,
    일정 시간 내에 다음 패킷을 보내지 않는 경우 클라이언트가 Socket Timeout을 발생시키고 연결 종료
  • Socket Timeout이 Read Timeout 보다 더 넓은 개념 

 

Read Timeout 

  • 클라이언트와 서버가 연결은 되었지만 서버의 응답이 느린 경우 (서버 부하)
  • 클라이언트에서 설정한 시간까지 서버에서 응답이 오지 않는 경우 발생
  • 서버의 응답이 지연되거나, I/O 작업이 길어져 요청이 처리되지 않는 경우 클라이언크가 연결 종료

 

Read Timeout ⊆ Socket Timeout

 

 

그렇다면 네트워크 통신에 Timeout이 필요한 이유는 ?

리소스 절약을 위해서 !!

서버는 여러 클라이언트와 동시에 연결을 생성하는데,
응답 시간이 길어 연결이 많으면 리소스가 모두 소진되어 장애 발생 

 


📌 내 답변

각각의 Timeout이 뭘 의미하는지 대답하지 못했다. 

 


 

매일메일 - 기술 면접 질문 구독 서비스

기술 면접 질문을 매일매일 메일로 보내드릴게요!

www.maeil-mail.kr

매일 메일의 면접 질문 정리

 

https://docs.tosspayments.com/resources/glossary/timeout 

 

타임아웃(Timeout) | 토스페이먼츠 개발자센터

네트워크 타임아웃(Timeout)은 서버로 요청을 보냈지만 일정 시간 동안 답변을 받지 못하면 발생해요.

docs.tosspayments.com

토스 Timeout 설명