🍪쿠키와 🗃세션의 차이점

    키워드

     

    🍪 : 쿠키 = 간식 상자에 있는 낱개씩 있는 쿠키 

    🗃 : 세션 = 창고에서 꺼내 먹는 초코파이 같은 과자

     

    키워드

     🍪쿠키와 🗃세션을 사용할까?

    더보기

    HTTP 프로토콜을 보완하기 위해 ! ( connectionless, stateless )

     

    그래서 뭐가 좋아요?

     

    클라이언트의 정보를 유지할 수 있어요!

    🍪쿠키와 🗃세션의 특징

    더보기

    쿠키의 저장 위치는? = 개인 PC

    세션의 저장 위치는 ? = 접속중인 웹서버!

     

    쿠키의 특징은 ?

    👍🏼 서버의 공간을 절약할 수 있음

     

    👎🏼 개인 PC에 저장되기 때문에 보안에 취약함 

    👎🏼 용량에 제한이 있음

    👎🏼 사용자가 웹 브라우저를 변경할 경우 다른 웹 브라우저에 저장한 쿠키를 사용할 수 없음

     

    세션의 특징은 ?

    👍🏼 서버가 클라이언트의 데이터를 저장하기 때문에 보안성이 높음

    👍🏼 용량에 제한이 없음 

    👍🏼 웹 브라우저에 의존하지 않아도 됨

     

    그럼 굳이 왜 🍪쿠키를 사용할까?

    더보기

    세션에만 사용자의 정보가 담긴다면, 서버에 소모되는 자원이 많아지기 때문에

    따라서 보안성이 낮은 정보(최근 본 페이지등)들은 쿠키에 보관하고, 보안성이 높은 정보(개인정보)들은 세션에 보관하는 것입니다.

     

    즉, 서버의 자원 낭비를 방지하고, 웹 사이트의 속도를 높일 수 있습니다.

     


    왜 🍪쿠키와 🗃세션을 사용할까?

    쿠키와 세션을 사용하는 이유는 다음과 같습니다.

    HTTP 프로토콜의 특징인 응답을 보낸 후 연결을 끊는 방식인 Connectionless 프로토콜과 클라이언트의 상태 정보를 가지지 않는 방식인 Stateless 프로토콜을 보완하기 위해 사용되었습니다. 즉 클라이언트의 정보 유지를 하기위해 사용하는 것이 바로 쿠키와 세션입니다.

     

     

    🍪쿠키와 🗃세션의 차이점

    쿠키와 세션의 차이점은 크게 상태 정보저장 위치입니다.먼저 쿠키는 개인 PC에 저장되며, 세선은 접속중인 웹 서버에 저장됩니다.

     

     

    🍪쿠키의 특징

    쿠키의 특징은 클라이언트 PC에 저장된다는 것이며, 서버가 주체가 되어 필요한 정보를 지정할 수 있습니다. 또한 HTTP 요청마다 서버로 전달합니다. 따라서 서버의 저장 공간을 절약할 수 있다는 장점이있습니다. 하지만, 클라이언트의 서버에 저장되기 때문에, 보안에 취약하다는 단점이 있고, 허용 용량이 사이트당 20개, 최대 300개이며, 각 쿠키는 4kb를 넘을 수 없습니다. 클라이언트의 브라우저에 저장되기 때문에 웹브라우저를 변경할 경우 다른 웹브라우저에 저장한 쿠키값을 사용할 수 없습니다.

     

     

    🗃세션의 특징

    세션의 특징은 서버가 클라이언트의 데이터를 보관하는 것이며, 고유한 SessionID 생성 후 클라이언트가 보낸 SessionID를 참조하여 정보를 추출합니다. HTTP 요청마다 메시지에 SessionID만을 포함시켜 보냅니다. 장점은 보안 유지가 가능하며, 서버의 용량이 충분하다면 저장 갯수나 용량의 제한이 없습니다. 서버에 저장되기 때문에 클라이언트의 웹브라우저에 의존하지 않아도 됩니다.

     

     

    그럼 굳이 왜 🍪쿠키를 사용할까?

    세션이 쿠키에 비해 보안도가 높은 편이지만, 쿠키를 사용하는 이유는 세션은 서버에 저장이 되고, 사용자가 많아지면 서버에 소모되는 자원이 많아집니다. 이러한 자원관리 차원에서 쿠키와 세션을 병행 사용하여, 서버 자원의 낭비를 방지하며, 웹사이트의 속도를 높일 수 있습니다.

     

     


     

    IP  = 비연결 

    TCP  = 연결지향

    HTTP = 비연결

     

    이렇듯 프로토콜을 어떻게 활용하느냐에 따라 연결 지향비연결 프로토콜로 바뀔 수 있다.

     

     

    [네트워크] 연결 지향 VS 비연결 지향 프로토콜

    비연결 프로토콜 연결을 유지하지 않는 프로토콜 연결을 유지하는 비용이 들지 않아 더 싸다. 매번 새롭게 연결이 성립되기 때문에 필요한 경우 매 연결 시 자신이 누구인지 알려줘야 한다. ex) H

    coding-lks.tistory.com

     

     

    [HTTP] HTTP 특성(비연결성, 무상태)과 구성요소 그리고 Restful API

    이번 글에서는 HTTP의 가장 큰 특징인 비연결성, 무상태 그리고 HTTP 상태코드(status)와 메서드(method), 헤더(header)에 대해 알아보도록 하겠습니다. 1. 비연결성 ( Connectionless ) 비연결성은 클라이언트

    victorydntmd.tistory.com

     

     

    728x90

    댓글