Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
배경 — k6 부하 테스트 결과
실 서버(
api.piroin.com, 40명 기준)에서 5종 테스트 실행.Stress·Soak 공통 원인: HikariCP 커넥션 풀 고갈.
pool-size=10인 상태에서 고부하·장시간 운영 시 커넥션 점유 시간이 쌓이면서 대기 폭발.
수정 내용
application.yml— HikariCP·슬로우 쿼리·타임아웃 설정 추가원인: Soak에서 최대 24분 응답 발생 → 커넥션 획득 대기 + 느린 쿼리 원인 파악 불가.
3단계 타임아웃 추가:
hikari.connection-timeoutjavax.persistence.query.timeoutspring.transaction.default-timeout슬로우 쿼리 로그 추가:
목적: 배포 후 슬로우 쿼리 로그를 수집 → 커넥션 오래 점유하는 쿼리 식별 → 인덱스/쿼리 최적화.
pool-size 상향은 근본 원인을 숨기는 것이므로 쿼리 최적화 이후 판단.
현재 상태 및 다음 단계
근본 원인(어떤 쿼리가 느린지)은 배포 후 슬로우 쿼리 로그로 확인 필요
sse_error임계값 초과는 k6 body 버퍼링 한계 — 서버 문제 아님,스레드 고갈 없음(normal_api p(95)=116ms) 확인 완료