목록 보기
Kotlin Coroutine으로 구현한 비동기 제휴 연동 시스템 구축기
백엔드

Kotlin Coroutine으로 구현한 비동기 제휴 연동 시스템 구축기

SSG.COM
SSG.COM
2025년 7월 8일

두줄요약

Spring Batch 기반 동기 연동의 병목을 Kotlin Coroutine으로 개선한 사례를 소개했습니다. Kafka와 비동기 호출을 결합해 처리 시간과 리소스 효율을 함께 높였습니다.

문제 상황

  • Spring Batch 기반 동기 처리로 인한 배치 서버 기동 비용
  • 15개 이상 외부 API의 순차 호출로 인한 처리 지연
  • 제휴사 호출 제한, 중복 데이터, 속도 제어 이슈로 인한 완전한 실시간 전환 난점

해결 방법

  • Kafka 이벤트 흐름과 Kotlin Coroutine을 결합한 비동기 연동 구조 도입
  • composite 서비스에서 15개 이상 API를 동시성으로 호출해 DTO 조립
  • 배치의 역할을 처리 대상 메시지 발행으로 축소하고 병목 구간만 비동기화

성능/운영 포인트

  • 스레드 수를 적게 유지하면서도 여러 코루틴으로 동시 처리 범위 확대
  • CPU 사용량 분산, Thread Count 감소, Heap과 GC 부담 완화
  • 배치 서버 기동 시간 제거로 자원 효율과 안정성 개선

다음 읽기

#Kafka 주제를 이어서 읽기

제휴 서비스 수집 시스템, 첫 설계부터 지금까지의 여정

제휴 서비스 수집 시스템의 레거시 한계를 개선해 이벤트 기반, CQRS, Zero Payload 구조로 재설계했습니다.실시간 연동과 부하 분산을 통해 속도, 정합성, 운영 효율을 높인 과정을 공유했습니다.

SSG.COM
SSG.COM
백엔드

댓글 0

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

댓글을 불러오는 중...