Stateless

서버가 클라이언트의 세션 상태 및 세션 정보를 저장하지 않는 네트워크 프로토콜이다. 이는 클라이언트와 서버간의 네트워크 통신이 어떻게 이루어지는지에 대한 개념이다.

요청에 대한 응답만 처리하는 방식이며, 각 통신은 선행되거나 후속으로 따라오는 통신과 관련이 없다. 클라이언트가 송신하려 했던 모든 데이터가 서버쪽에 수신 되었는지 확인하지 않는다.

이전의 클라이언트의 요청을 유지하지 않는다는게 핵심이다.

장/단점

  • 장점: 높은 확장성. 무상태는 기존의 서버가 혼잡해져서 새로운 서버를 가져다 놓아도, 계속 일을 처리할 수 있습니다.
  • 단점: 네트워크 부하량 상승. 클라이언트가 하고자하는 최종 목적을 위해, 전달해야하는 내용이 많아진다는 것입니다.

예시

자전거를 사려는 클라이언트 A 와 자전거를 판매하는 서버 B 가 있으며, A 가 B 의 자전거를 산다고 가정해봅시다.

  • A : 자전거 사려합니다.
  • B : 자전거 커스텀 재료를 골라주세요. (서버는 아무것도 기억하지 않는다.)
  • A : 자전거 사려합니다. 휠은 검정색, 핸들은 검정색, 바디는 흰색, 안장은 흰색으로 해주세요.
  • B : 배송은 어디로 해드릴까요? (서버는 아무것도 기억하지 않는다.)
  • A : 자전거 사려합니다. 휠은 검정색, 핸들은 검정색, 바디는 흰색, 안장은 흰색으로 해주세요. 배송은 집으로 보내주세요.
  • B : 결제는 무엇으로 해드릴까요? (서버는 아무것도 기억하지 않는다.)
  • A : 자전거 사려합니다. 휠은 검정색, 핸들은 검정색, 바디는 흰색, 안장은 흰색으로 해주세요. 배송은 집으로 보내주세요. 결제는 카드로 결제할게요
  • B : 결제 완료 되었습니다. (서버는 이제 요청을 처리한다.)

Related

  • UDP 프로토콜: UDP 는 서버가 클라이언트의 세션 상태 및 세션 정보 없이, 요청에 대한 응답만을 수행하는 네트워크 프로토콜입니다.
  • 온라인 검색: 검색창에 질문을 입력하고 엔터키를 누르는 형식으로, 검색창에 질문을 입력하다가 요청이 중단되어도, 다시 검색하면 됩니다.
  • stateful: 무상태의 반대 프로토콜

References