피드로 돌아가기
InfoQInfoQ
Backend

Idempotent Event 설계 기반의 대규모 분산 사용량 추적 시스템 구축

Inside Atlassian’s Forge Billing Architecture for Distributed Usage Tracking at Scale

Leela Kumili2026년 6월 20일2advanced

Context

단순 확장 모델에서 사용량 기반 과금 생태계로의 전환에 따른 고정밀 신호 수집 필요성 증대. 분산 서비스에서 발생하는 대규모 이벤트의 중복 제거와 정확한 Tenant Context 할당이 기존 구조의 핵심 병목 지점으로 작용.

Technical Solution

  • Shared Schema 기반의 구조화된 이벤트 생성으로 서비스 간 데이터 해석 일관성 확보
  • Kafka 기반 Streaming Layer 도입을 통한 Producer와 Consumer 간의 결합도 제거 및 독립적 스케일링 구현
  • UTS(Usage Tracking Service) 중심의 검증, 정규화, enrichment 과정을 통한 과금 데이터 신뢰성 확보
  • Idempotent Event 설계 및 Time-based Aggregation 적용으로 중복 과금 방지와 데이터 정합성 유지
  • Windowed Processing 기법을 활용한 지연 도착 이벤트의 처리 및 시계열 데이터 무결성 보장
  • Immutable Long-term Storage와 Low-latency Analytical Layer의 계층적 저장 구조로 감사 추적성과 실시간성 동시 달성

1. 분산 환경의 과금 시스템 설계 시 Idempotency 보장을 위한 유니크 이벤트 ID 체계 구축 여부 확인

2. 데이터 정합성을 위해 수집 단계에서 Schema Validation을 강제하는 중앙 집중형 스키마 레지스트리 검토

3. 지연 데이터 처리를 위한 Windowing 전략과 Late-arrival 처리 정책 수립

4. 감사(Audit)를 위한 불변 저장소와 분석용 고성능 저장소의 CQRS 패턴 적용 고려

원문 읽기