쿠키와 세션을 먼저 얘기하기 전, 한 가지 알아야할 게 있어. HTTP 통신에 대해 먼저 알아야 해 !

 

HTTP이란?

 HTTP는 클라이언트-서버 프로토콜이야. HTTP는 클라이언트와 서버 사이를 연결을 맡고있지. 

브라우저를 통해 웹 사이트를 돌아다닐 때, 우리는 웹 사이트를 방문하기 위해 서버에게 요청을 해. 서버는 요청을 받은 뒤 허락한다는 응답을 보내게 돼. 이렇게 간단하고, 대단해보여도 여러가지 문제점이 발생할 수 있어.

 

 클라이언트와 서버간의 응답이 끝난 후, 다른 웹 페이지를 방문했다가 다시 돌아오게 된다면 정보에 손실이 발생하거나, 불편한 점 등이 발생할 수 있어. 왜냐하면 이미 했던 프로토콜을 다시 한 번 진행하며, 아까 내가 했던 일들이 사라지기 때문이야.

 

 

 그렇기에 우리는 쿠키와 세션이라는 기능을 이용해 이러한 문제점을 해결하지 ! 쿠키와 세션에 대해 알려줄게 !

쿠키란 HTTP의 일종으로, 사용자가 웹 사이트를 방문할 때, 사이트의 서버에서 내 컴퓨터로 저장되는 txt형식의 작은 기록 정보 파일을 말해.

쿠키는 웹 사이트를 방문할 때마다 수시로 정보가 바뀌고, 전역 변수로 설정되어, 사이트 모든 페이지에서 읽을 수 있지 !  이 덕분에 우리는 방문했던 사이트를 좀 더 빠르게 이용할 수 있게 되었어.

 

 세션은 쿠키와 비슷한 목적이지만 반대의 방식을 사용하고 있어. 쿠키는 서버가 내 컴퓨터로 작은 파일을 저장했다면, 세션은 사용자가 브라우저를 종료하기 전까지, 서버가 클라이언트의 요청을 유지하게 만드는 기술이야. 사용자가 브라우저에 접속해, 서버로 요청을 하면, 자동 생성되고 서버의 메모리에 저장해 !

 

 쿠키와 세션의 차이점을 정리해볼까?

 저장위치를 기준으로, 쿠키는 로컬에 저장하지만 세션은 로컬과 서버에!

 보안을 기준으로, 쿠키는 탈취 및 변조가 가능하지만 세션은 서버에 저장되어있기 때문에 상대전으로 안전!

 생명주기를 기준으로, 쿠키는 브라우저를 종료해도 남아있지만, 세션은 브라우저 종료시 세션을 삭제!

 속도를 기준으로, 쿠키는 파일에서 읽기에 상대적으로 빠르고, 세션은 서버에서 처리하기에 상대적으로 느려!

+ Recent posts