세션의 주요 특징
- 유저별 상태 관리
- 서버는 각 사용자를 식별하고 특정 정보를 유지합니다.
- 세션 ID로 사용자 구분
- 각 사용자는 고유한
Session ID
를 부여받으며, 브라우저 쿠키 또는 URL 파라미터를 통해 이 값을 서버에 전달합니다.
- 서버 측 저장
사용자의 데이터는 서버에 저장
되며, 클라이언트는 세션 ID만 보유
합니다.
- 유효 시간 (Timeout)
- 세션은 일정 시간이 지나면 만료됩니다(기본적으로 30분). 설정에 따라 연장 가능.
세션 동작 흐름
- 사용자 요청
- 세션 생성
- 서버는 새로운 세션을 생성하고 고유한 Session ID를 생성합니다.
- 클라이언트로 ID 전달
- 서버는 세션 ID를 클라이언트 브라우저의 쿠키에 저장합니다.
- 세션 데이터 유지
- 이후 클라이언트의 모든 요청에서 세션 ID를 통해 사용자 상태를 유지합니다.
- 세션 만료
- 세션은 일정 시간 동안 활동이 없으면 만료됩니다.