1. 쿠키(cookie)
브라우저를 사용하는 환경 (로컬 컴퓨터
)에 서버에서 받은 데이터를 저장한 파일
- 로그인 정보 같이 유저가 굳이 다시 서버에 다시 요청하기에는 비효율적인 정보를 로컬에 저장해둠으로서 생산성을 높이는 것이 목적!
- 로그인 정보 등 사용자의 정보가 저장되는 경우가 많아 보안문제를 잘 살펴야 함.
- 다시 서버에 request 할 필요가 없기 때문에 속도가 빠름
- 사용 예 : 자동로그인 , 오늘그만보기 팝업창 등
2. 세션(session)
서버
에서 유저의 인증상태 (로그인 여부 등) 을 임시로 저장한 파일
- 쿠키와 같이 임시로 유저의 정보를 저장해둠으로서 생산성을 높이는 것이 목적!
- 서버에 저장해두기 때문에 쿠키보다 보안이 우수함.
- 서버에 저장되어있어서 쿠키보다 다소 느리고 유저정보가 많으면 메모리 과부하가 생길 수 있음.
- 서버에서 관리하기 때문에 로그관리 용이함.
- 브라우저를 닫거나, 서버에서 세션을 삭제했을 때만 삭제가 되므로, 쿠키보다 비교적 보안이 좋다.
- 각 클라이언트에 고유 Session ID를 부여한다. Session ID로 클라이언트를 구분해 각 요구에 맞는 서비스를 제공
3. 쿠키와 세션
- 공통점 : 데이터를 임시로 계속 저장해두는 역할.
- 차이점 : 쿠키는 사용자에게 저장되고 세션은 서버에 저장됨.
4. 캐시(cache)
💡 캐시(Cache)는 웹 페이지 요소를 저장하기 위한 임시 저장소이고, 쿠키/세션은 정보를 저장하기 위해 사용된다.
캐시는 이미지, 비디오, 오디오, css, js파일 등 데이터나 값을 미리 복사해 놓는 리소스 파일들의 임시 저장소이다.
캐시는 웹 페이지를 빠르게 렌더링 할 수 있도록 도와주고, 쿠키/세션은 사용자의 인증을 도와준다.