本系列將以 30 天的時間,從基礎到實戰探索 System Design,整理軟體工程師在設計大型系統時需要掌握的核心觀念。內容將涵蓋 Scalability、Load Balancing、Caching、Database、Message Queue、Microservices、Reliability 等主題,並進一步延伸至 RAG、LLM 與 AI Agent 等現代 AI 系統架構。
除了介紹基本概念,也會透過 URL Shortener、Chat System、Notification System 與 AI Application 等實際案例,一步步拆解需求、分析架構選擇與設計取捨
假設 User 按下: Place Order Backend 可能需要: Create Order Update Inventory Process Pay...
前面我們已經加入 Load Balancer、Cache、DatabaseReplication、Sharding、CDN、Message Queue。 但如果...
前面我們學過 Database Replication: ┌→ Replica #1 Primary Database├→ Re...
Day 13 最後我們看到: Server A ✅ Network ❌ Server B ✅ 兩台 Server 都活著,卻無法互相溝通。這叫 Network...
本篇目標:從零理解 Reliability,以及 System 如何面對 Failure。 1. Reliability 是什麼? **Reliabili...
Day 15 我們學到 Reliability 的核心: Failure → Detect → Isolate → Recover 但這裡有一個問題: 我們...
Day 16 我們學了 Observability。今天加入 Production System的另一個核心能力:Security。 Security 的目的...
前面 17 天,我們已經學過 LoadBalancer、Database、Cache、Replication、Sharding、CDN、MessageQueue...
Day 18 我們學到 System Design Interview 的基本流程,其中一個重要步驟是: Estimate Scale 很多初學者看到這裡會開...
前面 19 天,我們已經學過 LoadBalancer、Database、Index、Cache、Replication、Sharding、CDN、Messag...