1. 程式人生 > >【從零開始學架構-李運華】10|架構設計流程:識別複雜度

【從零開始學架構-李運華】10|架構設計流程:識別複雜度

架構設計第一步:識別複雜度

架構設計的本質目的是為了解決系統複雜性,所以要先了解。

【例】一個系統的複雜度來源於業務邏輯複雜,功能耦合度嚴重,架構師設計TPS達到50000/s的高效能架構沒有意義。

出現問題主要為了滿足“高可用”“高效能”“可擴充套件”三個方面,就算同時出現也要分優先順序。

【例】億級使用者平臺設計對標QQ,開始設計過於複雜,投入大量人力,上線後發現過度設計多此一舉,而且帶來很多問題:

  • 執行效率低下,升級複雜,容易出錯。
  • 開發效率低下。
  • 小問題不斷,不好定位。
  • 實際TPS遠未達到50000/s

真缺解決做法:

  • 列出主要的複雜度問題
  • 根據業務、技術、團隊等情況進行排序
  • 優先解決最主要的複雜度問題

億級平臺應該先將子系統數量降下來。

識別複雜度對於架構師來說是一項挑戰,沒有經驗只能用“排查法”