반응형

📝커넥션 풀 (DBCP)

  • 웹 컨테이너(WAS)가 실행되면서 DB와 미리 Connection (연결)을 해놓은 객체들을 pool에 저장해두었다가 클라이언트 요청이 오면 Connection을 빌려주고 처리가 끝나면 다시 Connection 을 반납받아 pool에 저장하는 방식을 말합니다
  • 동시 접속 할 경우 pool에서 미리 생성 된 Connection을 제공하고 없을 경우는 사용자는 Connection이 반환될 때까지 번호순대로 대기상태로 기다린다
  • WAS에서 션 풀을 크게 설정하면 메모리 소모가 큰 대신 많은 사용자가 대기시간이 줄어들고 반대로 커넥션 풀을 적게 설정하면 그 만큼 대기시간이 길어진다
  • 커넥션 풀은 서버당 최대 커넥션 수를 제한하여 따라서 DB에 무한정 연결이 생성되는 것을 막아주어 서 DB를 보호하는 효과도 있다
  • 대표적인 커넥션 풀 오픈소스는 commons-dbcp2 , tomcat-jdbc pool , HikariCP이고 최근에는 hikariCP 를 주로 사용한다 → 스프링 부트 2.0 부터는 기본 커넥 션 풀로 hikariCP 를 제공

 

📝디스크 풀

디스크가 꽉 찼음

 

📝데이터 풀

데이터베이스에서 얻은 데이터들의 집합

 

📝스레드 풀

스레드 제어 문제를 해결할 방법으로 스레드 풀을 사용한다.

스레드 풀은 매번 생성 및 수거 요청이 올 때 스레드를 생성하고 수거하는 것이 아닌 스레드 사용자가 설정해둔 개수만큼 미리 생성해두는 것이다 → 반환될 때까지 번호순대로 대기상태  작업이 끝난 스레드가 60초 이상 새로운 작업요청이 없으면 스레드를 종료하고 스레드 풀에서 제거

 

📝참조 데이터

해당 데이터를 여러 곳에 쓰이는 경우 주소를 참조하게끔 하면 계속 해당 데이터를 만드는 것보다 메모리 할당을 줄일 수 있다

 

 

🔗 참고 및 출처

https://d2.naver.com/helloworld/5102792

반응형