지연시간과 처리량의 균형 설계
실시간 데이터 애플리케이션에서 가장 중요하게 생각하는 요소는 지연시간(Latency)과 처리량(Throughput)의 균형입니다. 두 지표는 서로 트레이드오프 관계에 있어, 어느 쪽을 우선할지 비즈니스 요구사항을 명확히 정의하는 것이 출발점입니다. 저는 SLA 기반으로 p99 지연시간 목표를 먼저 설정하고, 이를 달성하면서 처리량을 최대화하는 방향으로 설계합니다. 기술 선택에서는 Kafka + Flink/Spark Streaming 조합을 선호하며, 백프레셔(Backpressure) 처리 메커니즘이 내장된 도구를 우선합니다. 문제 발생 시 대처로는 버퍼 크기, 배치 윈도우, 병렬도 조정 순으로 단계적으로 접근합니다. 협업에서는 비즈니스 팀과 SLA 기준을 합의하는 것이 기술 선택보다 앞서는 작업입니다.