天天看點

架構知識體系總結

架構知識體系總結

@Date 2018.08.30

一. 架構是什麼?

  • 系統:互相協同可運作的實體,是一群關聯個體組成, 這些個體可以是子系統/子產品/元件等
  • 架構:頂層設計,需要明确系統包含哪些個體,明确個體運作和寫作的規則
  • 架構:面向程式設計或者配置的半成品
  • 元件:技術次元的複用
  • 子產品:業務次元的職責劃分

二. 架構設計的背景

  • 軟體生産力遠遠跟不上硬體和業務的發展, 軟體的擴充非常複雜
  • 系統規模龐大,内部耦合嚴重,開發效率低
  • 系統耦合嚴重, 牽一發動全身, 後續修改和擴充困難
  • 系統邏輯複雜, 容易出問題, 出問題後很難排查和修複

三. 架構設計的目的

  • 解決軟體系統複雜度
    • 熟悉和了解需求, 識别系統的複雜點, 并針對解決
    • 并不需要面面俱到, 不需要每個架構都具體CAP特性
    • 在一個有限制的條件(團隊經驗/成本/資源/進度/業務)下去求最合适的解
    • 需求驅動架構
  • 分析
    • 性能
    • 可擴充性
    • 高可用
    • 存儲高可靠
    • 安全性/隐私性
    • 成本
我的部落格即将入駐“雲栖社群”,誠邀技術同仁一同入駐。