목록 보기
제휴 서비스 수집 시스템, 첫 설계부터 지금까지의 여정
백엔드

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

SSG.COM
SSG.COM
2025년 3월 14일

두줄요약

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

문제 상황

  • Crontab, Java Batch, Oracle Procedure 기반 레거시에서 대용량 변경 시 성능 저하와 데이터 지연 발생
  • 수정 시간 기준 감지로 불필요한 데이터 처리 증가, 프로시저 결합으로 로직 수정 어려움
  • 연속된 후속 처리 부재와 배치 실행 시점의 자원 집중 사용 문제

해결 방법

  • 이벤트 기반 아키텍처로 변경 사항 발생 시 Kafka 메시지 발행 후 즉시 연동
  • CQRS 패턴으로 조회와 변경을 분리하고, 읽기 부하를 Slave DB로 분산
  • Zero Payload 패턴으로 메시지에는 최소 메타정보만 담고 ID 기반 실시간 조회 방식 적용

성능/운영 포인트

  • Spring Batch 중심 구조를 실시간 연동 구조로 점진 전환
  • Kotlin Coroutine 기반 Composite 시스템으로 병렬 처리와 API 제어, 검증 역할 수행
  • 중복 메시지, 속도 제어, 제휴사 API 호출 제한 문제를 고려한 큐 서버 설계 시도

댓글 0

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

댓글을 불러오는 중...