김규범님의 블로그
[JAVA] 세션이란 본문
-- 세션이란
- 웹서버간의 네트워크 통신이 이루어질때 클라이언트가 누구인지 식별할때 사용
즉 클라이언트가 서버로 요청을 하면 서버는 이 클라이언트의 세션 아이디를 판단.
사용자가 누구인지를 판단한다.
-- 특징
1) 세션이 계속 유지되면 클라이언트를 계속 구분할 수 있다.
2) 보안적인 면에서 쿠키보다 우수하다.
3) 세션의 만료 시간을 두어 클라이언트가 서버에서 설정한 시간만큼 미동작 시
클라이언트의 세션을 만료 시킨다.
-- 장점
- 사용자 정보를 서버에 두어서 쿠키보다 보안상 좋다.
각 클라이언트에게 고유ID를 부여한다.
-- 단점
- 사용자가 너무 많을경우 서버의 메모리를 많이 차지하여셔 서버의 성능을 저하 시킬수 있다.
-- 세션 동작 순서
1) 클라이언트(사용자)가 서버에 접속 시 세션 ID를 발급합니다.
2) 서버에서 받은 세션 ID를 클라이언트(사용자)브라우저의 쿠키에 저장하여 가지고 있습니다.
3) 클라이언트(사용자)가 무엇인가 행위를 하여 서버에 요청을할 경우 세션 ID를 같이 서버에 전달 합니다.
4) 서버는 세션 ID를 판변하여 클라이언트(사용자)가 누구인지 판별합니다.