우매함의 봉우리를 넘어서며 개발하면서 기록하기

쿠키와 세션

비교

  쿠키(Cookie) 세션(Session)
저장 위치 클라이언트 서버
저장 형식 문자열(text) 객체(Object)
만료 시점 쿠키를 저장할 때 설정(설정이 없으면 브라우저 종료 시 만료) 정확히 정해지지 않음
리소스 클라이언트의 리소스 서버의 리소스
용량 제한 한 도메인 당 20개, 한 쿠키당 4KB 서버가 가능할 양만큼 제한이 없음

저장 위치

  • 쿠키 : 클라이언트의 웹 브라우저가 지정하는 메모리나 하드디스크
  • 세션 : 서버의 메모리에 저장

만료 시점

  • 쿠키 : 쿠키를 저장할 때 expires 속성을 이용하여 날짜를 정할 수 있음.
  • 세션 : 클라이언트가 로그아웃하거나, 일정 시간동안 반응이 없으면 만료됨. 그래서 정확한 시간은 알 수 없음.

리소스

  • 쿠키 : 클라이언트에 저장되고 클라이언트의 메모리를 사용
  • 세션 : 서버에 저장되고 서버 메모리리로 로딩되기 때문에 서버 리소스를 차지함.

용량 제한

  • 쿠키 : 클라이언트도 모르게 접속되는 사이트에 의하여 설정되어 문제가 발생할 수 있기 때문에 한 도메인에 20개씩 설정할 수 있으며 하나의 쿠키당 4KB로 크기 제한이 있음.
  • 세션 : 클라이언트가 접속하면 서버에 의해 생성되므로 개수나 용량의 제한이 없으며 서버가 감당 가능한 정도까지 생성 가능하다.