localStorage, sessionStorage, Cookie, Cache

GDana
gdana
Published in
2 min readMay 12, 2019

HTML 의 저장소라 불리는 localStorage, sessionStorage는 저장 위치와 보안의 형태가 다르다고 이야기하는데 그럼 친근하게 들어온 Cookie, Cache는 비슷한 듯 다른 것일까? 간단하고 명확한 차이를 알아보자.

이야기하기 전에 HTTP

오늘의 주제들에 대해 이야기 하기위해서는 HTTP를 짚고 가야 하는데, 어려운 개념은 아니다. HTTP란 웹 브라우저와 웹 서버간의 커뮤니케이션을 위한 통신 체계이다.

Cache

웹 캐시 또는 HTTP 캐시는 서버 부하를 방지하기 위해 웹 문서, 이미지 등의 자원을 임시 사용자 웹 브라우저에 저장하는 기술로 HTTP 통신시 임시 저장된 캐시가 있다면 불필요한 데이터 전송을 줄이고 서버에 불필요한 요청을 줄여주어 빠른 통신이 가능해진다.

Cookie

쿠키는 서버가 사용자 웹 브라우저 즉 로컬에 저장하는 데이터를 뜻한다. 로컬에 파일 형태로 저장되기 때문에 요청 속도는 서버를 통하는 다른 저장소보다 비교적 빠르다. 하지만 사용자의 로컬에서 관리되기 때문에 보안적인 부분에서 취약할 수 있다는 단점이 있다.

sessionStorage

세션은 쿠키를 기반으로 하지만 쿠키는 사용자 웹 브라우저에서 관리된다면 세션은 서버에서 관리된다. 때문에 보안적인 부분에서는 로컬에 저장되는 쿠키보다 우수하지만 요청 속도는 서버의 처리가 필요한 세션에 비해 쿠키가 우수하다.

localStorage

세션과 비슷한 역할을 하지만 라이프 사이클이 다르다. 세션은 브라우저를 종료하거나, 브라우저가 서로 다르거나, 도메인 마다 별도의 세션을 가져서 데이터의 유효성이 있지만 로컬스토리지는 직접 지우지 않는다면 별도의 만료기간이 없다는 큰 차이가 있다. 때문에 보안이 필요한 데이터는 로컬스토리지를 사용하지 않아야 한다.

--

--