天天看點

簡單了解常見的架構模式

1.MVC(單體架構)

單體架構模式就是常說的mvc開發模型。将系統所有功能、子產品的耦合關系都放在一個應用之中,比如:一個項目開發所有的檔案都會以打包成一個jar包或者war包的形式放置到伺服器上面。

簡單了解常見的架構模式

1.1單體架構特點

  • 打包成一個獨立的單元(以一個jar包或者war包的形式放置到伺服器上面)
  • 一個應用隻在一個程序的方式運作

1.2單體架構優點

  • 易于管理
  • 易于部署

1.3單體架構的缺點

  • 不利于測試
  • 疊代不便
  • 團隊協作難(多人開發時,不友善)
  • 跨語言程度差(不利于多言協作)
  • 可靠性差

2.RPC(遠端調用過程)

RPC(Remote Procedure Call):遠端過程調用。他一種通過網絡從遠端計算機程式上請求

服務,而不需要了解底層網絡技術的協定。

簡單了解常見的架構模式

2.1RPC的優點

  1. 提升系統可擴充性
  2. 提升系統可維護性和持續傳遞能力
  3. 實作系統高可用

2.2RPC的缺點

  • 一個完善的RPC架構開發難度大
  • RPC架構調用成功率受限于網絡狀況
  • 調用遠端方法對初學者來說難度大

3.SOA 架構

SOA(Service oriented Architecture):面向服務架構

它與RPC相比多了一個ESB,不再是用戶端直接調用service。中間加了ESB來管理Service

簡單了解常見的架構模式

3.1ESB

ESB(Enterparise Servce Bus):企業服務總線,服務中介。主要是提供了一個服務于服務

之間的互動。

ESB 包含的功能如:負載均衡,流量控制,加密處理,服務的監控,異常處理,監控

告急等等。

代表技術:Mule、WSO2

3.2SOA 架構優點

  • 更易維護
  • 更高的可用性
  • 更好的伸縮性

3.2SOA 架構缺點

  • 可靠性(Reliability)
  • 安全性(Security)
  • 編排 (Orchestration)
  • 遺留系統處理(Legacy support)
  • 語義 Semantics

4.微服務架構

微服務是一種架構風格。一個大型的複雜軟體應用,由一個或多個微服務組成。系統中

的各個微服務可被獨立部署,各個微服務之間是松耦合的。每個微服務僅關注于完成一件任

務并很好的完成該任務。

簡單了解常見的架構模式

4.1微服務特點

  • 系統是由多個服務構成
  • 每個服務可以單獨獨立部署
  • 每個服務之間是松耦合的。服務内部是高内聚的,外部是低耦合的。高内聚就是每個服務隻關注完成一個功能

4.2優點

  • 測試容易
  • 可伸縮性強
  • 可靠性高
  • 跨語言程度會更加靈活
  • 團隊協作容易
  • 系統疊代容易

4.2缺點

  • 運維成本過高,部署數量較多
  • 接口相容多版本
  • 分布式事務
這是個人學習筆記的記錄,部分資料來自于網絡,如有版權問題,可以留言,我及時更正。