728x90
쿠키 ?
: 클라이언트 로컬에 저장되는 키와 값이 들어있는 작은 데이터 파일
특징 ?
1. 클라이언트의 상태 정보를 로컬에 저장했다가 참조
2. 클라이언트에 300개까지 쿠키 저장 가능 하나의 도메인당 20개의 값만 가질 수 있고 하나의 쿠키값은 4KB까지 저장
3. 사용자가 요청하지 않아도 브라우저가 Request시 Request-Header를 넣어 자동으로 서버에 전송
동작
세션?
: 사용자의 정보 파일을 서버측에서 관리 (쿠키를 사용)
특징
1. 각 클라이언트에 세션 ID를 부여
2. 세션 ID로 클라이언트를 구분하여 클라이언트의 요구에 맞는 서비스를 제공
3. 사용자가 많아질수록 서버 메모리를 많이 차지하게 됨
동작
쿠키와 세션을 사용하는 이유?
: HTTP 프로토콜의 클라이언트가 요청을 한 후 응답을 받으면 연결을 끊어버리는 특징, 통신이 끝나면 상태를 유지하지 않는 특징을 해결하기 위해
쿠키 vs 세션
1. 사용자 정보가 저장되는 위치 (쿠키 : 클라이언트 / 세션 : 서버)
2. 보안
- 쿠키 : 클라이언트 로컬에 저장되기 때문에 변질되거나 request에서 스니핑당할 우려가 있음
- 세션 : 쿠키를 이용하여 세션ID만 저장하고 세션ID로 서버에서 처리
3. 라이프 사이클
- 쿠키 : 파일로 저장되기 때문에 브라우저가 종료되어도 정보가 남아있을 수 있음(만료시간 전)
- 세션 : 브라우저가 종료되면 만료시간에 상관없이 삭제
4. 속도
- 쿠키 : 클라이언트 로컬에 정보가 있어 속도가 빠름
- 세션 : 서버에서 처리가 요구되어 비교적 느리다.
728x90
'참고' 카테고리의 다른 글
Redis Architecture OverView (0) | 2021.06.27 |
---|---|
[AWS]ElastiCache (0) | 2021.06.27 |
비동기 통신 (0) | 2021.06.27 |
HTTP 응답 상태 코드 (0) | 2021.06.24 |
[MQ] KafKa (0) | 2021.06.10 |
댓글