當你拿到一個項目需求的時候,根據以往的架構設計,很多人就會想到:怎麼搭建項目架構,采用什麼樣的技術來實作什麼樣的功能啊之類的,其實當一個真正的架構師的話遠遠不止于此,我們需要:
業務架構
業務架構設計主要做兩件事情:
1、誰來使用這個軟體,即軟體服務面向的使用者群體是什麼人
2、我能為使用者提供什麼樣的服務(拆分子產品),具體分析業務
為什麼要捋業務架構呢?捋業務架構為的就是能使我們更清晰的設計應用架構
應用架構
什麼是應用架構呢?應用架構就是用來描述我的系統當中到底有多少個應用,每個應用的作用到底是什麼。
它與業務架構是密不可分的,我們需要根據具體的業務來進行相應的應用設計
類型有:
· 前端:負責資料展示
· 網關:(Zuul)協調前端應用與後端應用
· 環境:redis、mysql、ES、ELK等
· 消費:消費者
· 基礎:基礎應用(SpringCloud的相關元件Eureka注冊中心、Sleuth監控中心、Hystrix容錯應用、Config統一配置)
· 服務:提供者
技術架構
這一階段主要是對應用架構進行具體的技術選型,對比同種類型的技術選出最優方案(最适合系統的)
資料庫架構
對于資料量的多少适當的進行分庫分表