首頁 > 常見問題 > 主體

如何設計系統

(*-*)浩
發布: 2019-07-29 11:51:29
原創
5912 人瀏覽過

如何設計一個系統

如何設計系統

#第一步:描述使用場景,限制和假設(推薦學習:PHP影片教學

把所有需要的東西聚集在一起,審視問題。不停的提問,以至於我們可以明確地使用場景和約束。討論假設。

誰會使用它?

他們會怎麼使用它?

有多少用戶?

系統的作用是什麼?

系統的輸入輸出分別是什麼?

我們希望處理多少資料?

我們希望的讀寫比率?

第二步:創造一個高階的設計

使用所有重要的元件來描繪出一個高層級的設計

畫出主要的元件與連結

證明你的想法

第三個步驟:設計核心元件

對每一個核心元件進行詳細深入的分析。舉例來說,如果你被問到設計一個url 縮寫服務,開始討論:

產生並儲存一個完整url 的hash 

MD5 和Base62 

#Hash 碰撞 

SQL 還是NoSQL 

資料庫模型

將一個hashed url 翻譯成完整的url 

資料庫尋找

API 與物件導向設計

第四步:度量設計

確認和處理瓶頸以及一些限制。 

舉例來說就是你需要下面的這些來完成拓展性的議題嗎?

負載平衡

水平拓展

快取

#資料庫分片

論述可能的解決方案與代價。每件事情都需要取捨。 

可以使用可拓展系統的設計原則來處理瓶頸。

預估計算量

你或許會被要求透過手算來進行一些估算。

涉及的附錄涉及到的是下面的這些資源:

使用預估計算量

2 的次方表

每個程式設計師都應該知道的延遲數

更多PHP相關技術文章,請造訪PHP圖文教學欄位進行學習!

以上是如何設計系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板