그알것 — 그럼에도 알아야 할 것들
홈질문커뮤니티
로그인
그알것 — 그럼에도 알아야 할 것들

Service

  • 홈
  • 소개
  • 질문
  • 커뮤니티

My

  • 내 워크스페이스
  • 저장한 질문
  • 작성한 답변

Policy

  • 이용약관
  • 개인정보처리방침
  • 문의

© 2026 그알것 · What Still Matters

질문 목록Network
Network

Keep-Alive는 무엇이며 HTTP와 TCP에서 어떻게 다르나요?

실무4/5
설계4/5
인간4/5
기초3/5

면접관의 질문 의도

Keep-Alive를 같은 단어로 묶지 않고, HTTP·TCP 두 계층에서 푸는 문제가 다르다는 점과 운영 트레이드오프를 같이 보는지 가르려는 질문이다.

큐레이션 답변

학습 자료

HTTP Keep-Alive는 같은 TCP 연결 위에서 여러 요청·응답을 이어 처리하게 해 매 요청마다 핸드셰이크 비용을 다시 치르지 않게 한다. TCP Keep-Alive는 연결이 비어 있는 동안 주기적으로 probe 패킷을 보내 반대편이 살아 있는지 확인하고, 끊긴 좀비 연결을 가려낸다. 즉 둘은 같은 단어를 쓰지만 푸는 문제가 달라서, HTTP 쪽은 지연·CPU를, TCP 쪽은 자원 회수와 장애 감지를 떠안는다. 어느 쪽이든 timeout이 길수록 소켓 점유와 공격 표면이 커지고, 짧을수록 재연결 비용이 자주 발생하므로 nginx·LB·앱 서버 같은 계층의 timeout 값을 어긋나지 않게 맞추는 게 본 작업이 된다.

좋은 답변 구조

  1. 01Keep-Alive가 공통적으로 무엇을 노리는지 짧게 정의한다
  2. 02HTTP·TCP 두 계층에서 푸는 문제(요청 재사용 vs 생존 확인)를 비교한다
  3. 03지연·CPU 절약 같은 이점과 소켓 점유·공격 표면 증가 같은 비용을 함께 정리한다
  4. 04nginx·LB·앱 서버의 timeout 정합성을 잡는 운영 기준으로 마무리한다

자주 실수하는 포인트

HTTP Keep-Alive와 TCP Keep-Alive를 같은 기능으로 묶어 설명한다
유휴 연결 점유 비용을 무시하고 timeout을 무작정 길게 잡는다
프록시·LB·앱 서버의 timeout 값이 서로 어긋나도 괜찮다고 본다

실무 맥락

  • API 트래픽이 많아 커넥션 풀·idle timeout 튜닝이 응답 시간에 직접 묻어나는 환경
  • 프록시·로드밸런서·앱 서버가 여러 단으로 쌓여 timeout 정합성이 깨지면 즉시 504가 도는 구조
  • 장시간 유휴 연결이 죽었다 살아나는 클라우드 환경에서 좀비 커넥션 회수가 필요한 운영

본인 경험에 녹이는 힌트

프록시·앱 서버의 idle timeout이 어긋나 502/504가 나던 문제를 풀어 본 경험이 있다면 계층별 정합성 사례로 연결할 수 있다

Keep-Alive timeout을 늘렸다 줄이며 소켓·지연 균형을 잡아 본 적이 있다면 운영 트레이드오프 관점에서 말할 수 있다

TCP Keep-Alive로 좀비 커넥션을 회수해 본 경험이 있다면 HTTP 쪽 노브로는 해결되지 않는 자리를 짚을 수 있다

커뮤니티 인기 답변

전체 0개

아직 공개된 답변이 없어요. 첫 공개 답변을 남겨보세요.

관련 꼬리 질문

Q1HTTP/2에서는 Keep-Alive 관점이 어떻게 달라지나요
Q2프록시 앞단에서 idle timeout 불일치가 주는 문제는 무엇인가요
Q3Keep-Alive 공격 완화에는 어떤 방어가 필요하나요
아직 답을 쓰지 않았어요.
큐레이션 답변과 다른 사람 답변을 보고, 자기 언어로 답을 정리해보면 학습 효과가 가장 큽니다.
목차
  • 01면접관의 질문 의도
  • 02큐레이션 답변
  • 03좋은 답변 구조
  • 04자주 실수하는 포인트
  • 05실무 맥락
  • 06본인 경험에 녹이는 힌트
  • 07커뮤니티 인기 답변준비중
  • 08관련 꼬리 질문