更新進度(共6節): 源碼位址:GitHub·點這裡 || GitEE·點這裡
章節 | 文章标題 |
---|---|
01 | 項目技術選型簡介,架構圖解說明 |
02 | 業務架構設計,系統分層管理 |
03 | 資料庫選型,業務資料設計規劃 |
04 | 中間件內建,公共服務管理 |
05 | SpringCloud 基礎元件應用設計 |
06 | 通過業務、應用、技術、存儲方面,聊聊架構 |
一、架構的概念

架構分類可細化的分為業務架構、應用架構、技術選型、代碼規劃、部署環境架構等。業務架構是核心的驅動力,應用架構是實作的思路,技術選型落地是結果。根據使用者需求,設計合理的業務架構,做出相應的應用架構流程,最後落地實施,完成項目。如何在架構的初期,預判業務發展的速度,保證架構可以穩定快速的擴充,支撐起業務發展,這個是軟體開發者,特别是架構師,需要長期積累和修煉的核心能力。
二、業務架構
業務架構中包括業務規劃、功能子產品、流程設計,微服務架構模式中對整個系統的業務進行服務化拆分設計,把實際的業務抽象化,進而進行封裝,優化服務結構。不需要最好的架構,隻選則合适的架構,系統架構的原則都要以解決業務問題為核心目标,任何不基于業務做天馬行空的架構都是對公司的不負責任。
三、應用架構
應用架構流程是基于業務架構來設計的,相輔相成的關系。每個應用可以作為獨立的服務元件,把系統規劃為一個個服務子產品,進而進行開發,部署,運維等系列操作,所謂應用就是各個服務子產品。首選要明确各個服務核心功能,其次确定各個服務間協調工作,保證服務的穩定性。微服務架構模式下,對系統進行水準拆分和垂直拆分,做到可以對任何高并發的服務子產品進行獨立擴充,靈活性非常好。
四、資料架構
資料架構是确定資料庫模型的設計,不同業務場景下的資料可以選擇不同種類的庫來存儲,例如搜尋的資料可以使用ES,熱點資料可以使用Redis,普通業務資料可以選擇MySQL。
五、項目代碼規劃
1、分層結構設計
清晰的分層設計可以幫助快發人員快速的了解系統,縮短熟悉系統的時間。
2、子產品依賴
給出子產品依賴的明确順序,比如接口(Web層)依賴服務層(Service層),服務實作(Impl)依賴持久層接口(Dao),持久層實作(DaoImpl)依賴表實體對象(Entity),避免系統陷入代碼雜亂的坑中。
3、開發規範
每個項目開發必須要遵守統一的編碼規範文檔,統一命名格式,注釋風格,這樣可以友善其他人員快速閱讀和了解代碼邏輯。
六、技術選型落地
選擇合适的基礎架構,資料庫,中間件,基于項目的開發規範,把應用架構完整的實作,這樣項目就很難走偏。把握系統的高可用、高性能、擴充、伸縮、安全管理等方方面面的知識需要一個持久的積累和在實踐中不斷進步。
七、源代碼位址
GitHub·位址
https://github.com/cicadasmile/husky-spring-cloud
GitEE·位址
https://gitee.com/cicadasmile/husky-spring-cloud