웹 세션 vs. DB 세션

이도형·2025년 11월 17일

웹 세션

웹 세션은 "웹 서버 (혹은 WAS)와 클라이언트(사용자의 웹 브라우저) 간의 상호작용 기간"입니다.
Stateless한 HTTP 통신 환경에서 사용자 상태를 일정 시간동안 서버에 저장하고 유지하기 위함입니다.

특징

  • 사용자가 웹 사이트 로그인 후 로그아웃까지의 일련의 요청/응답 흐름이 하나의 세션입니다.
  • 웹 세션 정보는 서버 멥모리, DB 또는 캐시에 저장됩니다.
  • 세션 ID는 각 사용자 식별이 가능하고, 일반적으로 쿠키 방식으로 클라이언트에 전달합니다.
  • 클라이언트가 세션 ID가 담긴 쿠기를 서버로 보내고, 서버는 ID를 이용해 사용자 상태 정보를 찾습니다.

DB 세션

DB 세션은 "클라이언트 애플리케이션 (웹 서버)와 데이터베이스 서버(DBMS) 간의 논리적 연결 및 작업 상태"를 의미합니다.
DB에 접근해 쿼리를 실행하고 트랜잭션을 관리하기 위한 통로를 제공합니다.

특징

  • 사용자가 DB에 연결하고 쿼리를 실행하거나 트랜잭션을 처리하는 동안 유지됩니다.
  • 세션 내부에는 인증 정보, 트랜잭션 상태, 세션 변수, 임시 테이블 등 사용자 전용 정보가 관리됩니다.
  • DB 커넥션이 열릴 때 DB 세션이 생성되고, 커넥션 종료 시 세션이 종료됩니다.
  • 세션을 통해 SQL 명령 (SELECT, INSERT, UPDATE 등)이 DB에 전달되고 생성됩니다.

비교

결론

우리가 흔히 세션(Session)이라고 하는 것은 Web Session이지만,
백엔드를 다루는 개발자는 DB 세션도 신경써야하는 것을 잊지말자👍

profile
열심히 살고 싶습니다! 일하고 싶습니다 :)

0개의 댓글