섭섭한 개발일지

쿠키, 세션, 캐시 본문

CS/Web

쿠키, 세션, 캐시

Seop 2024. 4. 9. 23:24

 

쿠키, 세션, 캐시를 간단하게 이해하기 위해 A라는 웹사이트를 "울라라스파"라는 사우나로 예시를 들어보자

이 사우나에서는 회원등록을 하고 입장하며 사우나 이용을 마치고 나올 때 비용을 지불하는 시스템을 사용한다.

 

 

 

쿠키

쿠키북은 사우나에서 이용한 시설들의 내역을 작성하는 책자이다.

이 쿠키북은 사우나에서 체크를 해주거나 자신이 직접 체크를 하는 방법이 있으며 쿠키북은 수정이나 삭제가 자유롭다.

이용객이 직접 들고다니는 책자이니 만큼 도난의 우려도 있다.

 

::

쿠키는 웹사이트를 방문하고 이용할 때 브라우저에 저장되는 값이다.

브라우저는 클라이언트가 가지고 있으므로 클라이언트 측에서 관리를 하는 값이 쿠키인 것이다.

쿠키의 문제점은 클라이언트가 임의로 수정, 삭제가 가능하고 보안에도 취약하다.

 

 

세션

쿠키북에 이용객의 민감한 정보를 저장하게 될 경우 도난을 당했을 때 문제가 발생할 수 있다.

이용객의 민감한 정보를 쿠키북이 아닌 사우나측에서 관리하도록 한다.

사우나는 회원제로 이용이 되어 회원별로 고유의 값을 가지고 사우나를 이용하게 된다.

사우나를 이용하며 이용객이 특정 장소에 방문을 하거나 자신의 락커가 몇번인지 등 이용객의 민감한 정보는

회원별 고유 값을 통해 사우나측에서 데이터를 관리한다.

데이터를 사우나측에서 관리하는 만큼 쿠키북의 단점인 보안과 이용객의 자유로운 수정, 삭제 문제가 해결된다.

 

::

세션을 사용하는 사이트에 접근하면 서버에서는 사용자를 구분하기 위해 기한이 짧은 임시 키 하나를 브라우저로 보내 쿠키로 저장한다.

회원이 사이트의 페이지들을 돌아다닐때 회원의 주요 정보들은 키를 통해 서버의 메모리나 데이터베이스에 저장된다.

브라우저는 사이트의 페이지들을 접근할때마다 http요청에 키를 실어서 전송하고 서버에서는 키를 통해 회원을 구별하게 된다.

 

 

캐시

이용객이 사우나의 매점을 이용하려고 한다.

매점에는 여러 메뉴들이 있지만 이용객은 진열대에 없는 A과자가 있는지 물어봤고 매점 직원은 창고로 들어가 A과자를 들고나왔다.

A과자가 있는걸 확인한 회원은 생각해보고 오겠다 하고 매점을 나갔다.

직원은 이용객의 분위기로 보아 A과자를 구매하러 다시 올 것 같았고 A과자를 다시 창고에 가져다두면 이용객이 다시 왔을 때 창고로 가서 과자를 꺼내와야하는 불편함을 알고 있어 과자를 창고가 아닌 매점 구석에 과자를 두었다.

 

::

캐시라는 개념은 웹만이 아닌 컴퓨터의 메모리나 안드로이드 등 다양한 곳에서 사용된다.

공통적인 의미로 많이 사용되며 가져오는데 비용이 발생하는 데이터를 한 번 가져온 뒤에 임시로 저장을 해두는 개념이다.

 

웹 캐시는 이미지 등의 정보를 불러올 때 데이터 사용량도 발생하고 시간도 들기에

사용자가 여러 번 방문할 법한 사이트에서는 한 번 받아온 데이터를 사용자의 컴퓨터 또는 중간 역할을 해주는 서버에 저장해두는 것이다.

 

 

 

출처 : 얄팍한 코딩사전 (https://www.youtube.com/watch?v=OpoVuwxGRDI)

위 내용은 얄팍한 코딩사전님의 쿠키, "세션, 캐시가 뭔가요" 영상을 토대로 일부 내용을 각색한 게시글입니다.

'CS > Web' 카테고리의 다른 글

인터넷 네트워크 - DNS  (0) 2024.04.20
인터넷 네트워크 - PORT  (0) 2024.04.19
인터넷 네트워크 - TCP / UDP  (0) 2024.04.18
인터넷 네트워크 - IP 란  (0) 2024.04.17
HTTP 메세지 구조  (0) 2024.04.15
Comments