Apache Commons DBCP 2.9 - 아파치의 커넥션 풀 오픈소스인 Commons DBCP는 BasicDataSource라는 타입으로 DataSource를 제공한다. - 커넥션 풀 및 DataSource의 기본 개념이 필요하다면 포스팅을 참고해 주시길 바란다. 커넥션 풀 자료구조: LinkedBlockingDeque DBCP2 기준으로 커넥션 풀은 LinkedBlockingDeque 타입의 객체로 관리된다. 아파치가 커넥션 풀 구현체는 덱 기반으로 한 이유는 'lifo' 설정 때문이다. 커넥션 풀 설정 값에 lifo라는 프로퍼티가 있는데, 이 값을 true로 할 경우 stack 기반으로, 그렇지 않을 경우엔 Queue 기반으로 동작한다. LinkedBlockingDeque의 요소는 Node 타입..
애플리케이션에서 데이터베이스와 커넥션을 생성하는 과정 1) 애플리케이션 로직은 DB 드라이버(어떤 DB를 사용할 것이냐에 따라 다름)를 통해 커넥션을 조회한다. 2) DB 드라이버는 DB와 TCP/IP 커넥션을 맺는다. (3-way handshake 발생) 3) TCP/IP 커넥션이 완료되면 DB 접속을 위한 ID 및 Password 등과 같은 정보를 DB에 전달한다. 4) DB는 사용자 인증을 완료하면 DB 내부적으로 세션을 만든다. 5) DB는 커넥션 생성이 완료되었다는 응답을 보낸다. 6) DB 드라이버는 애플리케이션 로직으로 커넥션 객체를 반환한다. 단점 - 커넥션을 생성하는 것은 복잡하고 시간도 오래 소요되는 과정이다. - 시간이 오래 걸리기 때문에 사용자에게 느린 응답을 보일 수밖에 없다. -..
- Total
- Today
- Yesterday
- 쿠버네티스
- Java
- argocd
- container
- rolling update
- 우분투
- jvm
- helm
- 컨트롤러
- Non-Blocking
- ci/cd
- go
- Kubernetes
- K8s
- 카프카
- Controller
- db
- Linux
- Stream
- kafka
- CICD
- LFCS
- 코틀린
- docker
- golang
- GitOps
- ubuntu
- RDB
- github actions
- spring
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |