Stateful (상태 유지) - Stateless(무 상태)

2024. 9. 27. 23:30·HTTP

 

Stateful 상태 유지를 예로 들자면 

 

  • 고객 : 이 책이 얼마인가요?
  • 직원 A : 1000원입니다. (책 상태 유지)

 

  • 고객 : 2권 살게요
  • 직원 A : 2000원입니다 현금이나 카드로 결제하시나요?. (책, 2권 상태 유지)

 

  • 고객 : 현금으로 할게요.
  • 직원 A : 알겠습니다. (책, 2권, 현금 상태유지)

이 처럼 한 명의 직원에게만 물어보거나 다른 직원에게 인수인계 하는 방식으로 상태가 유지가 될 수 있을 것이다 하지만.

 

  • 고객 : 이 책이 얼마인가요?
  • 직원 A : 1000원입니다.

 

  • 고객 : 2권 살게요
  • 직원 B : ( 무엇을 2권 산다는 거지? )

 

  • 고객 : 현금으로 할게요.
  • 직원 C : ( 무엇을 현금으로 한다는 거지...? ).

고객이 매장을 둘러보다가 전부 다른 직원들에게 이런 말을 한다면 직원들은 물음표가 뜰 것이다 왜냐하면 다른 직원들은 이 고객의 이전

상태가 유지되지 않기 때문이다.

 

이처럼 Stateful (상태유지)는 중간에 서버가 바뀌어 버리면 오류가 일어난다는 뜻이다.

 

Stateful (상태유지)를 사용해야 할 때도 있다. 예를 들자면 로그인이다 로그인을 한 사용자라면 서버에 상태를 유지해야 하는데 일반적으로 서버 세션이다 브라우저 쿠키를 사용해서 상태를 유지한다. 

 

Stateful (상태유지)는 최소한만 사용하는것이 좋다.

 

 


 

 

Stateless 무상태를 예로 들자면 

 

  • 고객 : 이 책이 얼마인가요?
  • 직원 A : 1000원입니다. 

 

  • 고객 : 이 책 2권 살게요
  • 직원 B : 2000원입니다 현금이나 카드로 결제하시나요?.

 

  • 고객 : 이 책 2권 현금으로 할게요.
  • 직원 C : 알겠습니다. 

이와 같이 다른 직원에게 고객이 필요한 데이터를 다 넘겨준다면 직원이 아무리 많이 바뀌어도 직원들은 데이터에 따라 행동할 수 있게 된다.

 

이런 장점을 (고객 - 클라이언트) (직원 - 서버)로 나눈다면 갑자기 클라이언트의 요청이 증가 해도 서버를 대거 투입해 대규모 트래픽을 해결할 수 있다 응답 서버를 대거 투입할 수 있다는 장점이 있다.

 

모든 것을 Stateless (무상태)로 설계 할수 있는 것도 있고 아닌 경우도 있다. 또한 클라이언트에서 전송되는 데이터 양이 많을 수 있다.

 

Stateless (무상태)를 예로 들자면 로그인이 필요 없는 단순한 서비스 소개 화면이 있다.

 

'HTTP' 카테고리의 다른 글

HTTP 메서드 - PUT, PATCH, DELETE  (1) 2024.09.30
HTTP 메서드 - GET, POST  (0) 2024.09.30
Connectionless (비 연결성)  (2) 2024.09.28
HTTP 메시지  (1) 2024.09.28
'HTTP' 카테고리의 다른 글
  • HTTP 메서드 - PUT, PATCH, DELETE
  • HTTP 메서드 - GET, POST
  • Connectionless (비 연결성)
  • HTTP 메시지
taetae-o
taetae-o
taetae-o 님의 블로그 입니다.
  • taetae-o
    taetae-o 님의 블로그
    taetae-o
  • 전체
    오늘
    어제
    • 분류 전체보기 (19)
      • HTTP (5)
      • 우테코 (4)
      • java (4)
      • ai (2)
      • spring boot (1)
      • 프로젝트 (1)
        • Tooplay (1)
      • DB (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    카카오
    Tomcat
    대학생
    백엔드
    spring
    벡엔드
    네이버
    꿈
    개발자
    HTTP
    Spring Boot
    열심히
    Thread
    java
    프리코스
    우테코
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
taetae-o
Stateful (상태 유지) - Stateless(무 상태)
상단으로

티스토리툴바