티스토리 뷰

쿠키와 세션

  • HTTP 프로토콜은 요청에 대한 응답을 하고나면 연결을 끊고 클라이언트의 상태정보를 유지하지 않는다.
  • 하지만 실제로는 로그인을 유지한다던가 선택한 상품을 다른 페이지에서도 봐야한다던가 하는 등 데이터 유지가 필요한 경우가 많다.
  • 이러한 경우를 대처하기 위해 쿠키와 세션을 이용하는 것이고 둘의 차이는 정보의 저장 위치와 라이프사이클이다.
  • 쿠키는 사용자의 PC 에 저장하는 작은 기록 정보이다. 사용자가 웹사이트에 접근을 했을 때 웹서버가 생성을 하고 쿠키에 정보를 담아서 HTTP 응답을 할 때 클라이언트에게 넘겨준다. 클라이언트는 그 쿠키를 로컬PC 에 가지고 있다가 서버에 요청을 할 때 쿠키를 함께 넘깁니다. 로그인 페이지에 아이디와 비밀번호를 저장한다던가 팝업창을 하루 동안 보지 않도록 체크하는 등에서 사용된다.
  • 세션은 일정시간동안 사용자가 보내는 요청들을 하나의 상태로 보고 그 상태를 유지시키는 기술이다. 사용자가 로그인을 한 상태로 사이트를 이곳저곳 다닐 수 있을 수 있는 것은 세션 덕분이다. 클라이언트가 웹사이트에 접근하면 서버에서 세션ID를 쿠키에 담아서 응답하고 세션ID는 서버에 저장해둔다. 클라이언트가 새로운 요청을 할 때 쿠키에 세션id를 담아서 요청하게 되고 서버는 그 세션id를 확인하여 상태를 유지하게 된다.
  • 또 한 가지는, 브라우저를 종료했을 때 쿠키는 파일로 남아있어서 정보가 유지될 수 있지만 세션은 만료기간에 상관없이 삭제가 된다.
참고
  • 쿠키와 세션이 사용자의 정보를 저장하기 위한 기술이라면, 캐시(Cashe)는 웹 페이지 요소를 저장하기 위한 기술이다.
  • 이미지, CSS, JS 등의 웹페이지 요소를 미리 저장해두고 저장된 요소들은 서버를 거치지 않기 때문에 웹페이지가 빠르게 렌더링 될 수 있다.

연관자료

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함