• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

커넥션 관련 질문 드립니다

23.04.28 16:07 작성 23.05.02 13:38 수정 조회수 193

0

커넥션 풀을 이용하여 커넥션을 사용해서 반납하고 다음 커넥션을 가져올 때 conn0이라고 같은 커넥션만 가져오는 것을 볼 수 있는데 커넥션풀이 어떤 커넥션을 주는지 알고리즘이 따로 있는 걸까요? 어떤 기준으로 커넥션을 주는지 궁금합니다

답변 1

답변을 작성해보세요.

0

David님의 프로필

David

2023.05.01

안녕하세요. soyulpark님, 공식 서포터즈 David입니다.

ConcurrentBag.borrow() 메서드 내 connection을 담고 있는 sharedList를 돌면서 현재 사용중인지 아닌지 상태를 비교해서 사용중이지 않은 커넥션을 반환하는 것으로 보입니다.

image따라서, 사용 후 반환된 상태라면 리스트 내 첫번째에 위치하는 conn0이 계속 반환되는 것 같습니다.

자세한 내용은 아래 코드를 참고해 주세요.

https://github.com/brettwooldridge/HikariCP/blob/dev/src/main/java/com/zaxxer/hikari/util/ConcurrentBag.java#L136

감사합니다.