#streaming
노트 7개
Backend › Architecture
동영상 스트리밍 서비스 설계: Netflix·YouTubeNetflix·YouTube 같은 주문형 동영상 서비스의 설계다. 요구 사항과 규모 추정(하루 500TB 업로드), 데이터 모델과 API, 업로드 뒤 큐로 도는 처리 파이프라인(장면 단위 청크, 콘텐츠 검사, 트랜스코딩, 화질 변환), CDN과 ISP 안에 서버를 두는 Open Connect, 적응형 비트레이트와 이어 보기, 검색·트렌드·공유, 지역 차단과 추천을 정리했다.
Backend › Architecture
메시지 큐와 Kafka메시지 큐를 고르는 기준과 IBM MQ → RabbitMQ → Kafka → Pulsar로 이어진 구조 변화, Kafka의 토픽·파티션·컨슈머 그룹 구조와 빠른 이유(순차 I/O, 제로 카피), 전달 보장 수준(at-most/at-least/exactly once)과 메시지가 유실되는 지점별 대책, Kafka와 RabbitMQ의 차이, 처리 실패와 DLQ, Kafka Connect·Streams·스키마 레지스트리 생태계를 정리했다.
Backend › Architecture
Kafka 운영: 복제, 컨슈머 그룹, 튜닝, 모니터링Kafka 클러스터를 운영할 때 알아야 할 내부 동작을 정리했다. 복제와 ISR·하이 워터마크, acks와 min.insync.replicas의 조합, KRaft 컨트롤러와 장애 조치, 프로듀서 배치·압축·전송 방식, 컨슈머 그룹 리밸런스와 오프셋 커밋, 컨슈머 랙, 보존과 로그 컴팩션, 보안(TLS·SASL·ACL), 브로커 증설·롤링 재시작, 모니터링 지표와 병목 진단을 다룬다.
Backend › Express
Node.js 스트림: 데이터를 조각으로 흘려 처리하기큰 데이터나 끝이 없는 데이터를 통째로 메모리에 올리지 않고 조각(chunk) 단위로 처리하는 Node.js 스트림을 정리한다. Readable·Writable·Duplex·Transform 네 종류, 흐름 모드와 일시정지 모드, 백프레셔와 highWaterMark, objectMode, pipe의 함정과 pipeline, for await 비동기 반복, 웹 스트림과의 관계, streams1~3의 변천까지.
AI & Data › Recommender System
실시간 추천과 실험: 밴딧, 피드백 지연, A/B 테스트뉴스처럼 수명이 짧은 콘텐츠를 사용자 반응에 맞춰 바로바로 추천하는 방법을 정리했다. ε-greedy·톰슨 샘플링·UCB로 탐색과 활용을 오가는 멀티암드 밴딧, 사용자 군집·아이템 특징과 밴딧을 묶은 타기팅, 뉴스용 보정(시간 감쇠·위치 편향·중복 회피), 클릭률의 한계와 열독률, 피드백 지연이 성능에 주는 영향, 실시간 파이프라인 구조, 노출 편향을 걷어 낸 인기 콘텐츠, 버킷 A/B 테스트, 여론에 영향을 주는 추천의 투명성과 사용자 조절권을 다룬다.
AI & Data
데이터 파이프라인과 저장소 용어데이터 파이프라인은 수집 → 적재 → 저장 → 처리 → 활용의 다섯 단계로 데이터를 옮기고 다듬는다. 단계별 도구 지도(2026)와 도구를 고르는 원칙, 배치와 스트림·이벤트 시간과 늦게 오는 데이터·람다와 카파 아키텍처, ETL과 ELT, 웨어하우스·레이크·레이크하우스·테이블 포맷·데이터 메시 같은 저장소 용어, 데이터 계층과 테이블 이름 규칙, 분석 저장소가 커 가는 단계와 재작업에 강한 적재·운영 원칙을 정리한다.
AI & Data
이벤트 로그 설계와 수집지표와 의사 결정에 쓰는 이벤트 로그를 어떻게 설계하고 모으는지 정리했다. 보고 싶은 지표에서 거꾸로 로그를 정하기, 기록 시점의 기준 세우기, 매번 검증하기, 테이블 모양으로 남기기 같은 설계 원칙과 설계 순서, 품질 문제의 원인과 대응, who·what·how·when 구조, 스키마로 로그를 공유하는 법, 클라이언트·서버 로그의 차이, 에이전트 → 스트림 버퍼 → 원본 저장소·검색 인덱스로 이어지는 수집 파이프라인과 수집 자체를 감시하는 법을 다룬다.