← 질문 목록
#229깊이 0

커넥션 풀을 사용하는 이유는 무엇인가?

데이터베이스기초성능확장성

연결마다 TCP·인증·세션 설정을 거쳐야 해서 비용이 크기 때문이다. 매번 연결을 맺고 끊는 과정에서 TCP 핸드셰이크와 인증 과정이 반복되어 응답 시간이 늘어난다.

  1. 1. 클라이언트에서 커넥션 풀로: 연결 요청
  2. 2. 커넥션 풀에서 클라이언트로: 유효한 커넥션 대여
  3. 3. 클라이언트에서 커넥션 풀로: 사용 후 반납

풀에 미리 연결을 생성해 두고 대여하는 방식으로 동작한다. 기존 연결을 빌리면 요청마다 연결을 만드는 시간이 사라져 처리량이 늘어난다.

풀의 크기를 너무 크게 잡으면 DB 서버의 메모리와 CPU 자원을 과하게 사용한다. 반대로 너무 작게 잡으면 요청이 밀려 대기 시간이 길어진다.

동시 요청 수와 DB가 감당할 연결 수를 함께 재며 크기를 정한다. 부하 시험에서 대기 시간과 DB 사용률이 꺾이는 지점을 찾는다.

추천 꼬리질문

0/300

적은 내용은 AI 학습에 쓰일 수 있습니다. 이름이나 연락처는 넣지 말아 주세요.

관련 질문

커넥션 풀을 사용하는 이유는 무엇인가?