RSS DEV 커뮤니티

넷플릭스는 어떻게 2조 건의 일일 이벤트를 건축적 결정으로 바꾸는가 (그리고 당신도 어떻게 할 수 있는가)

넷플릭스는 Kafka를 통해 매일 2조 개 이상의 이벤트를 처리하고, 20,000개 이상의 Flink 작업을 실행하며, 이는 Java 버전부터 데이터베이스 선택에 이르기까지 아키텍처적 결정을 이끌어냅니다. 스트리밍 SQL을 갖춘 데이터 메쉬 플랫폼은 실시간 처리를 민주화하여, 인프라 팀이 아닌 팀에서 1년 만에 1,200개의 SQL 프로세서를 생성했습니다. 이 플랫폼은 5,000개 이상의 파이프라인에서 초당 1억 개의 이벤트를 처리합니다. 모든 제품 변경 사항은 A/B 테스트를 거치며, 초당 15만~45만 건의 요청과 밀리초 미만의 캐시 워밍 지연 시간을 보입니다. 2025년까지 ML 최적화된 실험을 통해 실험 기간을 최대 40%까지 단축할 것입니다. 실시간 분산 그래프의 경우, 넷플릭스는 확장성 제한으로 인해 Neo4j를 거부하고, Apache Cassandra를 기반으로 구축된 KVDAL을 선택하여, 높은 처리량과 낮은 지연 시간으로 수십억 개의 노드와 엣지를 달성했습니다. 이 결정은 스토리지 백엔드를 쉽게 교체할 수 있도록 하는 추상화 계층의 중요성을 강조했습니다. 넷플릭스의 실험 플랫폼은 결정적 할당과 순차적 테스트를 사용하여 변경 사항을 빠르게 검증합니다. 매일 170억 개의 메트릭과 7,000억 개의 트레이스를 처리하는 관측 가능성은 아키텍처 진화와 비용 효율성을 위한 중요한 피드백 루프입니다. 넷플릭스는 10,000명 이상의 엔지니어들이 15년 이상에 걸쳐 점진적이고 데이터 중심적인 진화를 통해 시스템을 구축했음을 강조하며, 그들의 전체 아키텍처를 맹목적으로 복사하는 것을 경고합니다. 핵심적인 내용은 특정 도구나 규모를 무비판적으로 복제하기보다는, 데이터 중심 의사 결정과 추상화 계층을 활용하는 넷플릭스의 규율을 채택하는 것입니다. "모든 것을 스트리밍"하는 것을 지양하며, 실시간 처리가 측정 가능한 비즈니스 가치를 제공하지 않을 때 배치 처리가 여전히 가치 있음을 강조합니다. 넷플릭스의 아키텍처 원칙은 데이터 피드백 루프, 도메인 전문가의 접근성, 그리고 인프라에 대한 측정된 투자를 우선시합니다.
favicon
dev.to
How Netflix Turns 2 Trillion Daily Events Into Architectural Decisions (And How You Can Too)
기사 이미지: 넷플릭스는 어떻게 2조 건의 일일 이벤트를 건축적 결정으로 바꾸는가 (그리고 당신도 어떻게 할 수 있는가)