被系統(tǒng)設(shè)計(jì)虐了
曾被一道系統(tǒng)設(shè)計(jì)的面試題虐的很慘,它的名字叫“如何設(shè)計(jì)醫(yī)院的掛號(hào)叫號(hào)系統(tǒng)”。過號(hào)怎么處理,專家號(hào)和普通號(hào)的處理,指定醫(yī)生或不指定醫(yī)生又如何處理,中間抽了個(gè)血,回來怎么處理?突然停電了又來電,數(shù)據(jù)怎么保存和恢復(fù)?問的我一臉懵逼。
于是我就特別關(guān)注系統(tǒng)設(shè)計(jì)這方面的學(xué)習(xí)資源,今天就在 GitHub 上找到了一個(gè)非常棒的項(xiàng)目,有 143 K 的 Star 數(shù),非常受歡迎。

這個(gè)倉庫可以:
學(xué)習(xí)如何設(shè)計(jì)大型系統(tǒng) 為系統(tǒng)設(shè)計(jì)的面試做準(zhǔn)備
學(xué)習(xí)如何設(shè)計(jì)大型系統(tǒng)
學(xué)習(xí)如何設(shè)計(jì)可擴(kuò)展的系統(tǒng)將會(huì)有助于你成為一個(gè)更好的工程師。
系統(tǒng)設(shè)計(jì)是一個(gè)很寬泛的話題。在互聯(lián)網(wǎng)上,關(guān)于系統(tǒng)設(shè)計(jì)原則的資源也是多如牛毛。
這個(gè)倉庫就是這些資源的組織收集,它可以幫助你學(xué)習(xí)如何構(gòu)建可擴(kuò)展的系統(tǒng)。
為系統(tǒng)設(shè)計(jì)的面試做準(zhǔn)備
在很多科技公司中,除了代碼面試,系統(tǒng)設(shè)計(jì)也是技術(shù)面試過程中的一個(gè)必要環(huán)節(jié)。
通過這個(gè)倉庫,你可以實(shí)踐常見的系統(tǒng)設(shè)計(jì)面試題,并且把你的答案和例子的解答進(jìn)行對(duì)照:討論,代碼和圖表,找出自己的不足。
這里有架構(gòu)圖表,有 API 設(shè)計(jì),有數(shù)據(jù)庫表設(shè)計(jì),有關(guān)鍵代碼實(shí)現(xiàn),是很好的學(xué)習(xí)資源。

還有學(xué)習(xí)方法:

最后的話
這么優(yōu)秀的學(xué)習(xí)資源,不多說了,收藏并學(xué)習(xí)。
GitHub 倉庫:https://github.com/donnemartin/system-design-primer
「閱讀原文」就可以直接訪問該倉庫,也可以公眾號(hào)后臺(tái)回復(fù)「系統(tǒng)設(shè)計(jì)」可獲取更多系統(tǒng)設(shè)計(jì)學(xué)習(xí)資源。
