微服務二:微服務的拆分、設計模式、內部結構


微服務的拆分、設計模式、內部結構

一、微服務拆分

  
  x軸處理並發量問題。 y軸解決業務量問題(微服務)。Z軸解決數據量問題。
  微服務的拆分,通常根據 系統層面、業務模塊層面、功能層面、讀寫層面、這四個層面來拆分。

1.系統層面拆分

  根據公司具有的業務系統進行拆分。這是最表面,最簡單的拆分。
  

2.業務模塊層面拆分

  業務模塊拆分,是根據業務的名稱和動詞進行拆分。如,對電商系統進行業務模塊層面拆分。
  

3.功能層面拆分

  

4.讀寫層面拆分

  
    如果完全按照這四個層面進行拆分,那么微服務將會非常詳細,導致拆分的樹過於復雜龐大。因此,拆分是沒有銀彈的。微服務拆分,可以根據團隊量來決定。一般來說,一個微服務,應該有3個人來維護。如果團隊有12個人,建議將系統拆分成4個微服務。總的來說,服務拆分,應根據公司投入的人力成本。人力成本越多,服務拆分可足夠細致。微服務架構設計時,要足夠靈活、保證其可擴展性。

二、微服務架構設計模式

  以團隊管理系統為例 展開說明。

聚合器設計模式

  
  這種設計的特點是 設計簡單,性能高效。且解耦、擴展。如果是前后端分離,聚合服務就是各個服務接口功能和業務邏輯。如果前后端沒有分離,每個聚合服務,可以是每個頁面
  

三、微服務內部結構

  微服務架構設計,首先就要選擇微服務的內部結構。通常其內部結構有如下兩種方式:
  
  第一種微服務結構,往往使用webapi,開發平台是.net5或者.netcore。如果想使用跨語言來開發(同時使用多種語言開發微服務,如同時使用java和.net5),則選用第二種。第二種比第一種的通信性能高。這里我們使用第一種。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM