반응형
Stateful
세션 정보를 서버에 저장. 세션 (상태)와 유관한 응답을 하게 설계된 서비스 구조. Sticky Session 을 생각
서버 사이드에 <클라이언트와 서버의 동작, 세션 상태 정보>를 저장하는 형태,
- 세션 상태에 기반해 서버의 응답이 달라진다.
예시 : state protocol
TCP
TCP 의 서버와 클라이언트는
- 연결 확정
- 데이터 전송
- 연결 종결
이라는 TCP handshaking 과정을 통해 연결되며, 데이터를 전송해 서버가 클라이언트의 세션 정보를 저장한다.
Stateless
세션 정보를 서버에 저장하지 않는다. 세션 (상태)와 무관한 응답을 하게 설계된 서비스 구조. Session Server 생각
- 서버 사이드에 <클라이언트와 서버의 동작, 세션 상태정보>를 저장하지 않는 형태
- 서버의 동작이 클라리언트와의 세션 상태와 독립적임
- 서버가 client 정보를 저장 관리하지 않아 scaling 이 자유롭다.
- 예: UDP/HTTP
- UDP 는 TCP 와 달리 클라이언트의 세션 상태와 관계 없이 요청에 대한 응답만 수행하고 서버가 클라이언트의 정보를 저장하지 않는다.
TCP , UDP 는 4계층. HTTP 는 7계층이다.
참고 문헌
https://velog.io/@makeitcloud/란-Stateless-Stateful-이란
https://5equal0.tistory.com/entry/StatefulStateless-Stateful-vs-Stateless-서비스와-HTTP-및-REST
https://www.xenonstack.com/insights/stateful-and-stateless-applications/
반응형
'프로젝트 - gift-shop' 카테고리의 다른 글
스프링 부트로 로그인 황금 코드✨ 만들기 (0) | 2021.03.15 |
---|---|
서버 2개 이상 세션 불일치 해결하기 (0) | 2021.03.09 |
서버 확장 전략 세우기: scale up vs scale out (0) | 2021.03.03 |
mvnw 의 필요성 (0) | 2021.02.28 |
MyBatis-Spring-Boot-Starter 사용법 (0) | 2021.02.21 |