系統設計是一個定義系統架構、模塊、接口和數據知足特定需求的過程
好比設計一個短網址服務、評論服務、feed流系統、搶紅包系統 秒少系統
微服務架構不少系統被按照業務拆分,須要單獨設計一個系統服務算法
熟悉後端技術組件,好比消息隊列 緩存 數據庫 框架
具有文檔撰寫 流程圖繪製 架構設計 編碼實現等綜合能力數據庫
使用場景 限制條件--用戶估計 併發qps
須要設計數據表 字段 類型 數據庫選項--是否須要持久化?使用關係型仍是NoSQL? 如何優化?何如設計索引?是否能夠使用緩存?
須要哪些接口?接口如何設計? 使用什麼算法或者模型? 不一樣實現方式之間的優劣對比,如何取捨?
用戶多了,qps高了如何如理? 數據存儲多路不夠存瞭如何處理?
故障如何處理?單點失敗、多點失敗、雪崩問題?