목록 보기
“장보기 지원금이 곧 소멸돼요” 알림 뒤에서 일어난 일
백엔드

“장보기 지원금이 곧 소멸돼요” 알림 뒤에서 일어난 일

SSG.COM
SSG.COM
2026년 5월 26일

두줄요약

장보기 지원금 소멸 알림 배치에서 메시지 발송 대기 중 DB 커넥션을 오래 점유해 타임아웃이 발생했습니다. 이를 위해 리소스 사용 구간과 발송 대기 구간을 분리해 배치 안정성을 높였습니다.

문제 상황

  • 장보기 지원금 소멸 알림 대량 발송 배치에서 수행 시간이 길어지고 간헐적 실패 발생
  • DB 커넥션 타임아웃 발생, 메시지 발송 대기 동안 커넥션을 오래 점유하는 구조

원인 분석

  • Spring Batch Chunk 흐름 안에서 대상자 조회와 메시지 발송 API 호출이 함께 묶인 구조
  • API 응답을 기다리는 동안에도 DB 커넥션이 반환되지 않아 Connection Pool 부담 증가

해결 방법

  • DB 리소스 사용 구간과 메시지 발송 대기 구간 분리
  • ResourcelessTransactionManager 적용으로 Chunk 트랜잭션의 리소스 점유 범위 조정

성능/운영 포인트

  • 병렬 처리로 전체 배치 처리 시간 단축
  • 대량 발송 상황에서 커넥션 점유 완화와 배치 안정성 개선 기반 마련

다음 읽기

#DB 주제를 다룬 다른 회사 글

SQS 기반 알림톡 처리에서 발생한 DB 커넥션 데드락 분석기

SQS 기반 알림톡 처리로 전환한 뒤 DB 커넥션 타임아웃과 데드락이 발생한 원인을 분석했습니다. REQUIRES_NEW 제거와 SQS 메시지 수 조정으로 커넥션 경합을 해소했습니다.

올리브영
올리브영
백엔드

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...