세션

강성욱·2023년 3월 20일
2

네트워크

목록 보기
1/3

앞으로 시작하게될 공모전을 준비하는데
멘토님이 집어주신
필요한 지식들을 공부하고 정리해보려고 한다.

세션이란?

세션은 서버에 남아있는 클라이언트에 대한 정보이다.
서버는 이 정보를 가지고 클라이언트를 구분하게 된다.


세션 필요성에대한 예시

쇼핑을 하기위해 쇼핑몰 홈페이지에 들어가서 쇼핑을 다하고 난뒤에는 홈페이지를 닫게된다.

위의 예시를 보면 알 수 있듯이 우리는 수시로 접속을 시도하고 접속을 끊는 과정을 반복하게 된다.

세션이 서버에 남아있는 클라이언트에 대한 정보라고 했는데,
만약 세션없이 접속을 시도하고 끊는것을 반복하면 어떻게 될까?

처음 들어가는 사이트의 경우 매번 들어가는곳보다 로딩이 느린것을 경험해 봤을것이다.

사실 이것은 처음 들어가는 사이트가 느리게 들어가지는것이 아니라
한번 들어가 봤기에 클라이언트에대한 정보 즉 세션이 서버에 남아서
다음에 연결을 시도할때 빠르게 연결되는 것이다.

만약 세션이 없다면
매번 새롭게 다시 연결해야 하므로 서버에 불필요한 연산작업이 늘어나 매번 처음들어가는 사이트를 들어갈때 처럼 많이 기다려야 할 것이다.


세션의 활용

    1. 클라이언트에서 서버로 연결 요청하면 서버는 세션 ID를 발급하고
    1. 이를 쿠키에 담아 클라이언트에 연결 응답 정보와 함께 전송해준다.
    1. 클라이언트가 다음에 연결을 요청할때 이때 받은 세션 ID가 담긴 쿠키와 함께 데이터를 요청하면
    1. 서버는 쿠키에 담긴 세션 ID를 확인하고 사용자가 누구인지 확인하고 응답하게 된다.
profile
시간을 박아서 성장해나가자

0개의 댓글

관련 채용 정보