클라우드 네이티브 아키텍처
서비스 하나를 쪼개는 순간부터 필요해지는 조각들을 손으로 만들어 봅니다. 서비스 간 통신과 회복탄력성, 큐와 비동기 API, Redis 캐시와 실시간 랭킹, S3 와 SeaweedFS, Kafka 로 흘리는 주문 이벤트, 리더가 둘이 되는 Raft 합의까지 여섯 코스입니다. 끝내면 아키텍처 회의에서 '무엇을 지불하고 무엇을 얻는지'로 말할 수 있게 됩니다.
코스
- 마이크로서비스 아키텍처 — 쪼개는 법보다 쪼개지 않는 법을 먼저.
- 큐와 비동기 API — 느린 일을 나중에, 안전하게.
- Redis 와 캐싱 — 랭킹은 ZSet 으로, 캐시는 조심스럽게.
- 오브젝트 스토리지와 S3 — 파일이 아니라 객체로 생각하기.
- 주문이 두 번 도착했고 한 번은 사라졌다 — KRaft 단일 노드에서 중복과 유실을 재현하고 막는다
- 리더가 둘이었다 — 임기와 정족수, 분할을 손으로 겪는다