架構設計方法初探

2021-09-24 09:17:05 字數 1093 閱讀 1456

作者 陳彩華

複製**

最近學習了阿里資深技術專家李運華的架構設計教程,頗有收穫,總結一下。

架構設計的目的 是為了解決系統複雜度帶來的問題,並不是要面面俱到,不需要每個架構都具備高效能、高可用、高擴充套件等特點,而是要識別出實際業務實際情況的複雜點,然後有有針對性地解決問題,即:有的放矢,而不是貪大求全,即:

在實際情況中,不一定每個系統都要做架構設計,需要結合實際情況。有時候最簡單的設計開發效率反而是最高的,架構設計畢竟要投入時間和人力,這部分投入如果用來盡早編碼,專案也許會更快。

gfs為何在google誕生,而不是在microsoft誕生,其中google有那麼龐大的資料是乙個主要因素,而不是因為google的工程師比microsoft的工程師更加聰明。

真正優秀的架構都是企業在當前人力、條件、業務等各方面約束條件下設計出來的,能夠合理地將資源整合一起並發揮出最大功效,並且能迅速落地。這也是很多bat出來的架構師到了小公司或者創業團隊反而做不出成績的原因,因為沒有大公司的平台、資源、積累,只是生搬硬套大公司的做法,失敗的效率非常高。

無論是結構的複雜性還是邏輯的複雜性,都會存在各種問題,所以架構設計時如果簡單方案和複雜的方案都可以滿足需求,最好選擇簡單的方案。《unix程式設計藝術》總結的kiss(keep it ******,stupid!)原則一樣適用於架構設計。

對於軟體系統來說,變化才是主題。軟體架構需要根據業務的發展而不斷變化。 如果沒有把握「軟體架構需要根據業務發展不斷變化」這個本質,在做架構設計的時候就很容易陷入乙個誤區:試圖一步到位設計乙個軟體架構,期望不管業務如何變化,架構都穩如磐石。

為了實現這樣的目標,要麼照搬業界大公司公開發表的方案;要麼投入龐大的資源和時間來做各種各樣的**、分析、設計。無論哪種做法,後果都很明顯:投入巨大,落地遙遙無期。更讓人沮喪的是,就算跌跌撞撞拼死拼活終於落地,卻發現很多**和分析都是不靠譜的。

實踐中,架構師要提醒自己不要貪大求全,遵循演化優於一步到位的原則,因為業務的發展和變化總是很快的,**無論多牛的團隊,都不可能完美**所有的業務發展和變化路徑。**實踐中可以參考如下建議:

架構設計方法初探

好記憶不如爛筆頭,能記下點什麼,就記下點什麼,方便溫故而知新!3.架構設計三原則 4.架構設計的流程 架構設計的目的是為了解決系統複雜度帶來的問題,並不是要面面俱到,不需要每個架構都具備高效能 高可用 高擴充套件等特點,而是要識別出實際業務實際情況的複雜點,然後有有針對性地解決問題,即 有的放矢,而...

架構設計方法初探

最近學習了阿里資深技術專家李運華的架構設計教程,頗有收穫,總結一下。架構設計的目的是為了解決系統複雜度帶來的問題,並不是要面面俱到,不需要每個架構都具備高效能 高可用 高擴充套件等特點,而是要識別出實際業務實際情況的複雜點,然後有有針對性地解決問題,即 有的放矢,而不是貪大求全。在實際情況中,不一定...

APP系統架構設計初探

一,體驗的優化。在手機上顯示,速度是乙個非常重要的體驗點,試想,如果您開啟乙個 發現裡面的一直顯示失敗或者是x,稍微做得好一點的,可能是乙個不消失的loading或者是菊花等等,但不管如何,沒能快速的拉取和展示對使用者體驗是乙個極大的挑戰。那麼,手機上的體驗如何做呢?這裡筆者有些小總結 1,減少的大...