오늘 수업 시간에 쿠키에 대한 개념을 얕게나마 배웠다.
조금 더 보충이 필요할 것 같아서 구글링+유튜브로 검색해보니
쿠키, 세션, 캐시 이 세 가지의 개념을 함께 다루는 경우가 많았다.
정리를 통해 각각의 개념 정리를 해두면 좋을 것 같아서 포스팅을 하게 되었다.
쿠키 (Cookie) 란?
: 사용자가 방문한 웹사이트에서 사용자의 브라우저에 전송하는 작은 조각을 말한다.
예를 들어서, 웹사이트에서 우리가 로그인을 할 때 옵션으로 '아이디/비밀번호 저장'을 클릭하면
다음번에 그 사이트에 다시 접속했을 때 우리가 로그인했던 아이디와 비밀번호가 미리 입력되어 있다
하지만 이 정보는 우리의 컴퓨터(= 사용자/클라이언트 브라우저) 에만 존재하고,
다른 컴퓨터에서 똑같은 웹사이트에 접속한다 해도 우리가 입력했던 아이디와 비밀번호는
입력되어있지않다 (당연한 얘기지만)
이러한 쿠키들이 남기 때문에 자동로그인, 팝업창 설정이나
인터넷쇼핑에서 장바구니에 물건 담아놓으면 유지되는 것이 가능하다.
이렇듯 개인의 컴퓨터에 쿠키가 저장되다 보니 해당 컴퓨터를 사용한다면
누구나 쉽게 쿠키 값을 확인 가능하여 보안성이 낮은 편이다.
세션 (Session) 이란?
: 쉽게 말하면 서버 측에 저장되는 쿠키를 말한다. (쿠키는 사용자 측면, 세션은 서버 측면)
앞서 말한 쿠키는 브라우저를 종료하고 다시 접속을 해도 계속 남아있는 반면 (기간 설정 가능),
세션은 주로 브라우저 종료와 함께 사라진다(기간을 따로 지정하는 게 가능하긴 하다)
중요 데이터를 저장 시에 사용이 되고 쿠키와는 다르게 서버에 직접 저장이 되어 보안성이 높은 편이다.
캐시 (Cache) 란?
: rsc 리소스 파일들(데이터)을 임시 저장하는 보관소이다.
예를 들어 구글 웹페이지에 처음 접속하면 구글 웹페이지에 있는 모든 이미지, 링크, CSS/JS 파일 등을
우리의 브라우저로 모두 불러와야 한다.
(불러와야 하는 리소스 파일들이 많을수록 페이지 로딩 속도가 느려질 수 있다)
이처럼 매번 같은 웹페이지에 접속할 때마다 매번 새롭게 서버에서 똑같은 데이터를 불러와야 한다면
여러모로 비효율적일 것이다.
이를 방지하게 위해, 캐시를 이용하여 전에 사용되었던 데이터들은
사용자 컴퓨터에 있는 저장소에 따로 저장해두는 것이다.
여기서 말하는 저장소를 캐시 저장소라고 말하며,
접속했던 웹페이지의 데이터는 다시 사용될 가능성이 높으므로 캐시에 저장하여 서버를 거치지 않고 데이터들을 더 빠르게 접근 가능하도록 만든다. (=페이지 로딩 속도 향상에 도움)