티스토리 뷰
1️⃣ 기본 개념
✅ maximumPoolSize란?
동시에 사용할 수 있는 최대 DB 커넥션 개수
예:
- maximumPoolSize = 10
→ 동시에 10개의 DB 연결만 사용 가능
→ 11번째 요청은 대기
2️⃣ Spring Boot 설정 방법
✅ application.yml
spring:
datasource:
hikari:
maximum-pool-size: 20
minimum-idle: 10
connection-timeout: 30000
idle-timeout: 600000
max-lifetime: 1800000
datasource:
hikari:
maximum-pool-size: 20
minimum-idle: 10
connection-timeout: 30000
idle-timeout: 600000
max-lifetime: 1800000
✅ application.properties
spring.datasource.hikari.maximum-pool-size=20
spring.datasource.hikari.minimum-idle=10
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.idle-timeout=600000
spring.datasource.hikari.max-lifetime=1800000
spring.datasource.hikari.minimum-idle=10
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.idle-timeout=600000
spring.datasource.hikari.max-lifetime=1800000
3️⃣ 적정 값은 얼마로 해야 할까?
📌 공식 권장 계산식 (CPU 기반)
커넥션 수 = (코어 수 × 2) + 디스크 수
예:
- CPU 4코어
→ (4 × 2) = 8~10 정도 권장
📌 일반적인 실무 권장 범위
환경권장 값
| 개발 | 5~10 |
| 중소 서비스 | 10~30 |
| 고트래픽 | 30~50 (DB 스펙에 따라 다름) |
⚠ 무조건 많이 준다고 좋은 것이 아닙니다.
4️⃣ DB(PostgreSQL) max_connections 확인
DB 쪽도 제한이 있습니다.
SHOW max_connections;
예:
max_connections = 100
👉 전체 서버에서 사용할 수 있는 최대 연결 수
💡 여러 애플리케이션이 사용한다면 나눠 써야 합니다.
5️⃣ 과도하게 설정하면 생기는 문제
❌ DB 과부하
❌ 컨텍스트 스위칭 증가
❌ 오히려 성능 저하
❌ 메모리 부족
6️⃣ 추천 튜닝 전략
🎯 1단계
maximum-pool-size = 10~20
🎯 2단계
부하 테스트 진행 (JMeter 등)
🎯 3단계
CPU / DB 사용률 보면서 점진 증가
7️⃣ 실무에서 자주 쓰는 안정 세팅 예시
spring:
datasource:
hikari:
maximum-pool-size: 20
minimum-idle: 10
idle-timeout: 600000
max-lifetime: 1800000
connection-timeout: 30000
datasource:
hikari:
maximum-pool-size: 20
minimum-idle: 10
idle-timeout: 600000
max-lifetime: 1800000
connection-timeout: 30000
📌 핵심 정리
항목의미
| maximumPoolSize | 최대 동시 DB 연결 수 |
| minimumIdle | 최소 유지 연결 수 |
| connectionTimeout | 커넥션 대기 시간 |
| maxLifetime | 커넥션 최대 수명 |
🚨 중요한 팁
✔ DB max_connections 확인 필수
✔ 서버 CPU 코어 수 기준으로 설정
✔ 부하 테스트 없이 과도하게 늘리지 말 것
✔ 운영 환경에서는 모니터링 필수
원하시면
✔ HikariCP + PostgreSQL 최적 조합
✔ 대규모 트래픽 기준 계산 방법
✔ 커넥션 풀 고갈 문제 해결
✔ Kubernetes 환경에서 설정 방법
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Weaviate
- n8n
- faiss
- poetry
- 오라클
- CVE 취약점 점검
- AWS
- VectorStore
- 버쳐박스
- Qdrant
- 쿠버네티스
- 임베딩
- Chroma
- llama
- Ai
- KoSimCSE
- llm
- MSA
- 테라폼
- 코로나19
- K8s
- Oracle
- kiwipiepy
- MCP
- open ai
- embedding
- RAG
- 5.4.0.1072
- chunking
- RangChain
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
| 29 | 30 | 31 |
글 보관함
