ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 쿠키&세션
    개발 2020. 12. 23. 22:02

    쿠키(Cookie)

    사용자가 사이트를 방문했을 때, 사용자의 컴퓨터에 저장되는 정보

     

    쿠키의 구성요소

    • 이름 - 각 쿠키의 값을 식별하기 위한 키
    • 값 - 특정 이름으로 쿠키에 저장된 값
    • 유효시간 - 쿠키의 유지 시간
    • 도메인 - 쿠키를 전송할 도메인
    • 경로 - 쿠키를 전송할 요청경로

     

    쿠키의 특징

    • 쿠키는 HTTP 헤더 정보에 포함되어 전달된다. HTTP는 비연결 지향으로 상태 정보를 저장 X
    • 쿠키는 클라이언트의 웹 브라우저가 지정하는 메모리나 하드디스크에 저장된다. 즉 서버의 자원을 사용하지 않는다.
    • 클라이언트도 모르게 접속되는 사이트에 의해 설정될 수 있기 때문에 도메인당 20개, 쿠키당 4kb 제한을 두고 있다.
    • 쿠키는 저장 시 expires 속성을 정의하여 무효화 시키면 삭제될 날짜를 저장할 수 있다.
    • 사용예시) 팝업 공지의 오늘은 띄우지 않기, 아이디 저장 등.

     

    세션(Session)

    서버와 클라이언트의 유효한 연결을 식별하는 정보

    • 서버는 클라이언트가 요청을 보내면 요청을 식별할 수 있는 세션 ID를 부여한다.
    • 클라이언트는 재접속할 때 해당 쿠키를 이용해 세션 ID값을 서버에 전달한다.
    • 세션은 서버에 저장되고 서버 메모리에 로딩 되기 때문에 세션이 생길 때 마다 서버의 리소스를 차지한다.
    • 클라이언트가 로그아웃 하거나, 설정 시간 동안 반응이 없으면 세션이 무효화 되기 때문에 정확한 시점을 알 수 없다.
    • 클라이언트가 접속할 시 서버에 의해 생성되므로 개수나 용량에 제한이 없다.
    • 세션의 경우 서버의 메모리에 저장된다.

     

      Cookie Session
    저장 위치 Client Server
    저장 형식 Text Object
    만료 시점 쿠키 저장시 설정
    (설정 없을 시 브라우저 종료 시)
    정확한 시점 모름
    리소스 클라이언트의 리소스 서버의 리소스
    용량 제한 도메인당 20개, 쿠키당 4kb 제한 없음

    '개발' 카테고리의 다른 글

    HTTP  (0) 2021.01.05
    URI와 웹 브라우저 요청 흐름  (0) 2021.01.05
    자바의 메모리관리, 가비지 컬렉션  (0) 2020.12.13
    스프링과 스프링 부트의 차이  (0) 2020.12.08
    MSA?  (0) 2020.12.04
Designed by Tistory.