질문 132 · 실전 면접 답변
HTTP의 요청·응답 구조와 무상태성(Stateless)은 정확히 무엇을 뜻하나요?
이렇게 답해 보세요 (핵심 답변)
HTTP는 메서드·URI·헤더·본문으로 요청 의도를 보내고 상태 코드와 표현으로 응답을 받는 애플리케이션 계층 프로토콜입니다. 여기서 무상태성(Stateless)이란 서버가 이전 요청의 문맥을 프로토콜 수준에서 자동 보존하지 않아도 각 요청의 의미를 독립적으로 해석할 수 있다는 뜻입니다. 이는 프로토콜 설계 특성일 뿐, 애플리케이션이 쿠키·토큰·세션 저장소나 DB로 로그인 상태를 관리하는 것까지 금지한다는 뜻은 아닙니다.
함께 설명하면 좋은 이유 (꼬리질문 대비)
- HTTP가 무상태적이라는 성질과 아래 계층에서 TCP 연결을 끊지 않고 재사용하는 것(Keep-Alive, 연결 풀링)은 서로 다른 계층의 개념입니다.
- 각 요청이 독립적인 의미를 가지기 때문에 중간 프록시나 CDN 캐시가 요청과 응답 헤더만 보고도 응답을 재사용하거나 부하를 여러 서버로 분산하기 유리합니다.
면접에서 자주 하는 실수
HTTP의 무상태성을 '서버에 어떤 세션이나 데이터베이스 상태도 저장할 수 없다'거나 '매 요청마다 TCP 연결을 새로 맺고 끊는다'는 뜻으로 오해하면 안 됩니다.
원리와 예제까지 읽기
공식 참고 자료
질문 목록 출처 ↗ · 원본 132번을 바탕으로 질문과 답변을 새로 정리했습니다.