Tips

[Tips] 쿠키(COOKIE)와 세션(SESSION)의 차이

chsr 2021. 5. 24. 14:39
728x90
반응형

■ Tips 쿠키(COOKIE)와 세션(SESSION)의 차이


■ 정의

  • 쿠키(COOKIE)

- 클라이언트(브라우저) 로컬에 저장되는 키(Key)와 값(Value)으로 구성된 String 형태의 임시 파일

- 사용자인증이 유효한 시간을 명시할 수 있으며, 유효시간이 정해지면 브라우저가 종료되어도 인증이 유지됨

- 클라이언트의 상태 정보를 로컬에 저장했다가 참조함

- 클라이언트에 최대 300개까지 저장 가능 (쿠키당 4KB까지 저장 가능하며, 도메인당 20개의 값만 가질 수 있음)

  • 세션(SESSION)

- 쿠키를 기반하고 있지만, 사용자 정보 파일을 서버 측에서 관리

- 서버 내 클라이언트를 구분하기 위해 고유한 ID(세션ID)를 부여하며, 서버에 접속해서 브라우저가 종료될 때까지 인증상태 유지 (접속 시간 내 제한을 두어 일정 시간 응답이 없을 경우 세션을 유지되지 않게 설정 가능)

- 쿠키와 비교하였을 때 보안에 좋지만, 사용자가 많아질수록 서버 메모리를 차지하게 됨 (동접자 수가 많은 웹사이트의 경우 서버 과부하로 성능 저하 요인이 될 수 있음)

- 클라이언트가 REQUEST를 보내면 해당 서버의 엔진이 클라이언트에게 세션ID를 부여


■ 요약

  쿠키(COOKIE) 세션(SESSION)
저장 위치 *클라이언트 (사용자 PC) *서버
데이터 저장 형식 String Object
리소스(사용하는 자원) 클라이언트의 리소스 서버의 리소스
용량제한 총 300개 (쿠키당 4KB,도메인당 20개) 제한없음 (서버가 허용하는 한)
속도 쿠키 > 세션
보안 쿠키 < 세션
만료시점 쿠키 저장 시 설정
(만료시점이 지나면 삭제되며,
설정된 시점이 없으면
브라우저 종료 시 삭제됨)
브라우저 종료 시 삭제
(기간 설정 가능)
728x90
반응형