MSA 통신 계층은 왜 이렇게 복잡한가
동기/비동기 선택 기준부터 gRPC 바이너리 인코딩, Kafka Outbox 패턴, API Composition 병렬화, Service Mesh 사이드카, GraphQL Federation까지 — MSA 통신 설계의 공통 철학을 추적한다.
총 13개의 글
동기/비동기 선택 기준부터 gRPC 바이너리 인코딩, Kafka Outbox 패턴, API Composition 병렬화, Service Mesh 사이드카, GraphQL Federation까지 — MSA 통신 설계의 공통 철학을 추적한다.
Consumer Group 상태 머신과 리밸런싱 발생 조건부터 Cooperative 전략, 중복 처리 방지, Lag 진단까지 — Consumer가 멈추는 모든 이유를 추적한다.
Lambda/Kappa 아키텍처 선택부터 시계열 DB 다운샘플링, Redis Cluster 슬롯 분산, 샤딩 전략, 글로벌 복제 일관성까지 — 데이터 시스템 설계의 근본 트레이드오프를 추적한다.
At-Most-Once부터 Exactly-Once까지, Kafka 전달 보장의 전 계층을 추적한다. Producer 멱등성, 트랜잭션 Two-Phase Commit, Consumer offset 커밋 타이밍이 어떻게 맞물려 최종 보장을 결정하는지 살펴본다.
완전한 흐름의 각 단계 책임부터 원자성 보장, DDD 통합, 처리 보장, 성능 최적화, MSA 통합까지 — 하나의 철학이 만드는 아키텍처를 추적한다.
Topology와 Task의 1:1 대응부터 Outbox Pattern의 원자성 보장까지, Kafka Streams의 아키텍처 결정들을 하나의 철학으로 추적한다.
메시지를 소비해도 삭제하지 않는 설계 결정부터 순차 I/O, Zero-Copy, KRaft까지 — Kafka의 모든 선택이 '로그'라는 하나의 철학에서 나온다.
동영상 스트리밍부터 위치 기반 서비스까지, 7개 시스템 설계 문제에서 반복되는 핵심 패턴과 트레이드오프 결정 원칙을 추적한다.
Producer 배치 전략부터 Consumer Fetch 튜닝, 파티션 핫스팟 진단, 운영 장애 대응까지 — Kafka 처리량을 지배하는 설계 결정들을 추적한다.
메시지 전달 후 삭제하는 브로커와 이벤트를 로그로 영구 보관하는 분산 로그의 철학적 차이부터, Push/Pull 소비 방식과 두 시스템을 함께 쓸 때의 아키텍처 분리까지 추적한다.
이벤트 스트림을 읽기 모델로 변환하는 프로젝션의 내부 동작부터 Blue/Green 재구축, 장애 격리, Eventual Consistency 처리까지 하나의 설계 철학을 추적한다.
파티션 복제의 Leader/Follower 구조부터 ISR, acks, min.insync.replicas, Leader Election, Log Compaction까지 — Kafka 내구성 설계의 일관된 철학을 추적한다.
KafkaTemplate 비동기 전송의 함정부터 Outbox Pattern까지, Spring Kafka 5개 레이어를 관통하는 하나의 질문 — '정확히 한 번'은 가능한가.