본문 바로가기
Spring/Spring DB

DB Connection

by YellowCow 2025. 7. 18.

아래는 SQL 처리를 위해 DB Connection 시도 시 내부에서 벌어지는 동작이다

 

1명의 사용자가 Connection을 시도하는 경우

1. 클라이언트는 데이터베이스 서버에 연결을 요청하고 Connection을 맺는다.

2. 이때 데이터베이스 서버는 내부에 Session이라는 것을 만든다.

3. 개발자가 클라이언트를 통해 SQL 전달하면 현재 커넥션에 연결된 세션이 SQL 실행한다.

 

세션은 트랜잭션을 시작하고, 커밋 또는 롤백을 통해 트랜잭션을 종료한다. 그리고 이후에 새로운 트랜잭션을 다시 시작할 있다.

사용자가 커넥션을 닫거나, 또는 DBA(DB 관리자) 세션을 강제로 종료하면 세션은 종료된다.

 

 

N명의 사용자가 Connection을 시도하는 경우

N명의 사용자가 Connection을 시도하는 경우, Connection과 Session도 N개가 생성될 수 있다
예를 들어 10명의 사용자가 Connection 을 시도하는 경우, Connection과 Session이 10개가 생성될 수 있다

'Spring > Spring DB' 카테고리의 다른 글

문제해결 - 트랜잭션 처리 코드 반복 문제  (0) 2025.07.19
DB Lock  (0) 2025.07.18
트랜잭션  (0) 2025.07.18
DataSource  (0) 2025.07.17
Connection Pool  (0) 2025.07.16

댓글