Request Response 구조라 합니다.
클라이언트는 서버에 요청을 보내고 서버는 요청받은 내용에 대한 결과를 응답합니다.
무상태 프로토콜(이하 Stateless)은 서버가 클라이언트의 상태를 보존하지 않습니다
서버가 클라이언트의 상태를 보존하고 있으면 어떻게 될까요?(Stateful)
대용량 트래픽이 발생한다면 리소스가 매우 많이 필요합니다.
Stateless는 요청과 응답 이후 클라이언트의 상태를 끊기때문에 다른 클라이언트의 요청에 응답할 수 있는 상태가 됩니다. 다시말해 서버 확장성이 높습니다. 또한 서버가 장애가 일어난다면, 중계 서버를 통해 같은 기능을 하는 다른 서버로 요청을 전달하여 통신할 수 있습니다.
단점으로는 클라이언트가 추가 데이터를 계속해서 전송해야 합니다. ( 서버가 클라이언트 상태를 계속 모르기 때문 )
비즈니스 로직상 모든 것을 무상태로 설계할 수 없는 경우도 있습니다.
초기 연결과 종료를 반복하는 HTTP 통신의 낭비를 줄이기 위해 만들어졌습니다.
start-line
header
empty line (줄바꿈)
message body