架構風格就是一種項目的設計模式。常見的架構風格有基于用戶端與服務端的、基于元件模型的(EJB)、分層架構(MVC)、面向服務架構(SOA)等。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI9s2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xCMy81dvRWYoNHLwEzX5xCMx8FesU2cfdGLwMzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsQTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cGcq5SM1EzN5MzMzEDM3kTM1YTMvwFOwUDMyIDMy8CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.jpg)
一、單體架構
單體架構也稱為單體系統或單體應用,就是一種把系統中所有功能、子產品耦合在一個應用中的架構方式。
- 單體架構特點:
打包成一個獨立單元,以一個程序的方式運作。
- 單體架構優點:
項目易于管理,部署簡單
- 單體架構缺點:
測試成本高、可伸縮性差、可靠性差、疊代困難、跨語言程度差、團隊協作困難
二、RPC架構
RPC(Remote Procedure Call):遠端過程調用,一種通過網絡從遠端計算機程式上請求服務,而不需要了解底層網絡技術協定。
代表技術:
Thrift、Hessian等等。
三、SOA架構
- SOA(Service Oriented Architecture):面向服務架構
- ESB(Enterprise Service Bus):企業服務總線,服務中介。主要是提供了一個服務于服務之間的互動。
- ESB包含的功能:
負載均衡、流量控制、加密處理、服務的監控、異常處理、監控告急等等。
- 代表技術:
Mule、WSO2
四、微服務架構
微服務就是一個輕量級的服務治理方案。一個大型的複雜軟體應用,由一個或多個微服務組成,系統中的各個服務可被獨立部署,各個微服務之間是松耦合的。每個微服務僅關注完成一件任務并很好的完成任務。
- 代表技術:
SpringCloud、dubbo、dubbox
- 微服務特點:
- 微服務優點:
- 微服務缺點: