Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- js
- 톰캣
- select
- 자바
- Tomcat
- 초단위
- 제이쿼리
- docker 컨테이너로 띄우기
- 리눅스
- 정규식
- springboot+redis
- redis + spring boot 함께
- aws elasticache 활용
- catalina.out
- 특수문자 치환
- sftp
- javascript
- insert
- Stack
- Java
- architecture
- 만들면서 배우는 클린 아키텍처
- Linux
- 엔티티 코드 치환
- Entity Code 치환
- for문
- mysql
- 자바스크립트
- Docker Compose
- jQuery
Archives
- Today
- Total
꾸준하게, 차근차근
[Database] 2. 데이터베이스 연결 구조와 DB 세션 본문
트랜잭션을 자세히 이해하기 위해 데이터베이스의 서버 연결 구조와 세션에 대해 정리하려 한다.
1. 데이터베이스 연결 구조 1
사용자는 클라이언트(WAS, Database tools, SpringBoot, H2 Console)를 사용하여 데이터베이스에 접근할 수 있는데, 이때 클라이언트는 데이터베이스 서버에 연결을 요청하고 커넥션을 맺고 데이터베이스 서버는 세션을 생성한다.
그리고 해당 커넥션을 통한 모든 요청은 생성된 세션을 통해 실행된다.
세션은 트랜잭션을 시작하고, 커밋 또는 롤백을 통해 트랜잭션을 종료하며 사용자가 커넥션을 닫거나 데이터베이스 관리자가 세션을 강제로 종료하면 해당 세션은 종료된다.
2. 데이터베이스 연결 구조 2
커넥션 풀이 10개의 커넥션을 생성했다면, 세션도 10개가 생성된다.
이는 커넥션풀이 10개면 해당 커넥션마다 세션이 각각 연결되어 있는 것을 의미한다.
3. 참고
실제 구현 레벨에 따라서 데이터베이스 연결 구조가 다를 수 있는데 기본적으로는 해당 연결 구조를 참고하면 된다.
'Database' 카테고리의 다른 글
[Database] 3. DB락 개념 이해 (0) | 2024.06.04 |
---|---|
[Database] 1. 트랜잭션에 대한 이해 (0) | 2024.04.11 |
[Database] Oracle / MySQL의 특징과 차이 (0) | 2022.07.22 |
[Database] 데이터베이스 RDBMS / NOSQL 에 관하여 (0) | 2022.07.21 |
[MySql] Select 하여 Insert 하기 (0) | 2021.09.11 |