GitHub

https://github.com/Choidongjun0830

커넥션 풀 2

[Spring DB 1편 듣고 복습, 토이 프로젝트 수정] 2. 커넥션 풀과 데이터소스 이해

커넥션 풀 이해 데이터베이스 커넥션을 획득할 때 애플리케이션 로직은 DB 드라이버를 통해 커넥션 조회 DB 드라이버는 DB와 TCP/IP 커넥션을 연결. 이 과정에서 TCP/IP 연결을 위한 네트워크 동작이 발생 DB 드라이버는 TCP/IP 커넥션이 연결되면 ID와 PW와 기타 부가 정보를 DB에 전달 DB는 ID와 PW를 통해 내부 인증하고, 내부에 DB 세션을 생성 DB는 커넥션 생성이 완료되었다는 응답을 전송 DB 드라이버는 커넥션 객체를 생성해서 클라이언트에 반환 이렇게 하면 DB와 애플리케이션 서버는 커넥션을 생성하기 위한 리소스를 매번 사용해야하고, 복잡하고, 시간이 많이 든다. 그래서 커넥션을 미리 생성해두고, 사용하는 커넥션 풀이라는 방법을 사용한다. 애플리케이션을 시작하는 시점에 필요한 ..

Spring 2024.02.23

커넥션 풀

DB 드라이버를 사용하면 매번 데이터베이스를 사용할 때마다 TCP/IP 커넥션을 맺어야 한다. 그래서 커넥션을 미리 생성해두고 사용하는 커넥션 풀이라는 방법을 사용한다. 애플리케이션이 시작할 때 커넥션 풀은 필요한 만큼 커넥션을 미리 확보해서 보관한다. 커넥션 풀에 들어가 있는 커넥션은 TCP/IP로 데이터베이스와 연결되어 있는 상태라서 언제든지 즉시 SQL을 데이터베이스에 전달할 수 있다. 어플리케이션 로직은 이미 생성되어있는 커넥션을 객체 참조로 가져다쓰기만 하면 된다. 커넥션을 사용하고 나면 커넥션을 종료하는 것이 아니라 살아있는 상태로 커넥션 풀에 반환한다. DataSource 커넥션을 DB 드라이버로 얻다가 커넥션 풀 중 하나인 hikariCP로 바꾸려 하면, 커넥션을 획득하는 어플리케이션 코드..

Spring 2024.02.01
728x90