쿠키, 세션, 캐쉬, 로컬 스토리지 ...
뭔가를 저장하는 저장소 같은데... 궁금해서 차이점을 찾아보았다 🤔
"쿠키란 하이퍼 텍스트의 기록서(HTTP)의 일종으로서 인터넷 사용자가 어떠한 웹사이트를 방문할 경우 그 사이트가 사용하고 있는 서버를 통해 인터넷 사용자의 컴퓨터에 설치되는 작은 기록 정보 파일을 일컫는다."
*출처:wikipedia
사용자의 브라우저에 저장되고, 통신할 때 HTTP 헤더에 포함되는 텍스트 데이터 파일이다.(쿠키 1개당 최대 4KB, 문자열만 저장가능)
이름, 값 만료기간(지정 가능), 경로 정보가 있고 키와 값으로 구성되어 있다.
사이트에서 방문한 페이지를 저장하거나 유저의 로그인 정보를 저장하는 등 다양한 방법으로 사용된다.
해당 사용자의 컴퓨터를 사용한다면 누구나 쿠키에 입력된 값을 쉽게 확인 가능하다.
1) Session Cookie
2) Persistent
persistent 쿠키의 경우 클라이언트의 pc에 저장되기 때문에 피시방 도서관 등 공용 PC에 저장된 쿠키는 쉽게 접근이 가능하다. 사용자의 ID, 비밀번호가 암호화된 형태로 저장되어 있을 때 해당 Cookie 값을 그대로 복사해와서 자동 로그인을 활성화한 사이트에서는 ID, 비밀번호 인증 절차를 거치지 않고 로그인할 수 있다.
쿠키와 비슷한 개념이나 정보를 DB에 저장한다는거에 큰 차이가 있다.
대부분의 경우엔 메모리에 이를 저장하는데, 로그인 중인 유저의 수가 늘어난다면 서버의 램이 과부화가 된다. 이를 피하기 위해서 세션을 데이터베이스 시스템에 저장하는 방식도 있지만, 이 또한 유저의 수가 많으면 데이터베이스의 성능에 무리를 줄 수 있다.
다음 포스팅에서는,
로컬 스토리지, 세션 스토리지, 캐쉬에 대해 알아보자
출처:
https://ryusae.tistory.com/7,
https://tristan91.tistory.com/521,