diff --git a/.env.example b/.env.example index 9e83bae..487ecfd 100644 --- a/.env.example +++ b/.env.example @@ -6,6 +6,10 @@ LPS_DB_USER=postgres LPS_DB_PASSWORD=postgres +# ── LPS API 스케일 (미설정 시 1 / 40 — 단일 프로세스로도 ~1,100 RPS) ── +LPS_API_PROCESS_COUNT=1 # uvicorn 프로세스 수(=사용 코어 수). 커넥션 풀은 예산에서 자동 역산 +LPS_DB_CONNECTION_BUDGET=40 # lps API 커넥션 총예산. 공유 PG=40, 전용 PG(max_conn≈100)=90 + # ── LPS 워커 시크릿 ── OPENAI_API_KEY= # 비면 AI 유사도 판정 OFF NAVER_KEYS= # "id1:secret1,id2:secret2" — 네이버 쇼핑 오픈API 키(여러 개면 로테이션) diff --git a/docker-compose.yml b/docker-compose.yml index dc66df7..016037d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -130,8 +130,10 @@ services: PYTHONUNBUFFERED: "1" # 멀티코어: PROCESS_COUNT(uvicorn 워커=코어수)를 올리면 커넥션 풀은 자동 산정된다. # (pool+overflow)×2엔진×PROCESS_COUNT ≤ DB_CONNECTION_BUDGET 를 config 가 스스로 보장. - # PROCESS_COUNT: "4" - # DB_CONNECTION_BUDGET: "40" # 전용 PG(max_connections≈100)면 90 근처로 상향 + # 값은 .env 에서 서버별로 조정(compose 수정 불필요). API 병목은 드묾 — 기본 1이면 충분, + # 부하테스트/대량 폴링 대비 시에만 코어 수만큼 상향(예: 4). + PROCESS_COUNT: ${LPS_API_PROCESS_COUNT:-1} + DB_CONNECTION_BUDGET: ${LPS_DB_CONNECTION_BUDGET:-40} # 전용 PG(max_connections≈100)면 90 근처로 상향 ports: - "9600:9600" extra_hosts: