쿠키와 웹 스토리지

멤오장·2023년 4월 5일
0

이론 정리

목록 보기
3/3

웹 통신 방식

클라이언트가 웹 서버로 데이터를 요청하고 서버는 요청받은 데이터를 보내준다.

2가지 통신 방식
HTTP - 요청을 보낸 경우에만 응답하는 단방향 통신 응답 후 연결 종료
Socket - 서버와 클라이언트가 연결을 유지 실시간 데이터 (스트리밍, 게임)

HTTP는 요청과 응답이 끝나면 바로 연결을 끊어버리고(비연결성),
서로의 데이터를 기억하지 않는데(무상태성),
기억이 필요한 데이터를 위해 쿠키나 웹 스토리지를 사용한다.

데이터 저장 방식

쿠키

브라우저에 저장되는 작은 크기의 문자열로 (최대 4KB)
서버에 요청할 때 마다 함께 보내서(성능문제)
사용자를 식별할 수 있게 해준다.
만료시간을 명시하면 브라우저를 종료해도 데이터가 유지된다. (보안문제)
도메인 당 20개의 쿠키를 가질 수 있다.

세션

데이터를 서버에 저장하는 것으로
쿠키의 성능과 보안 문제를 해결 할 수 있다.
고유 ID를 생성해서 클라이언트를 식별한다.

웹 스토리지

브라우저를 통해 데이터를 저장하는 HTML5 API
저장만 할 뿐 서버에 전송되지 않는다.
쿠키와 기능은 유사하지만 저장 공간이 더 크다. (5MB)
동기식으로 메인 스레드 연산을 중단 시킨다.

로컬 스토리지

도메인당 1개 스토리지가 생성되고,
다른 창이어도 같은 도메인에선 동일한 데이터를 공유한다.
브라우저를 닫았다 열어도 계속 유지된다.
직접 삭제 하지 않는 이상 영구 저장된다.

세션 스토리지

새 창, 새 탭의 단위로 스토리지가 생성되고
데이터를 공유하지 않는다.
브라우저가 열려있는 동안 유지된다. (임시 저장소)

캐시 스토리지

서비스 워커가 제공하는 기능 중 하나
네트워크로 불러온 정적 리소스를 캐싱할 때 활용
비동기 동작하여 메인 스레드 연산에 영향을 주지 않는다.

IndexedDB

브라우저에서 많은 양의 구조화된 데이터를 관리하기 위한 API
인덱스를 사용해 데이터를 고성능으로 탐색
비동기 동작

profile
일단 적기

0개의 댓글