- 微服務容器化開發實戰
- 尹為強
- 536字
- 2020-10-30 15:17:06
1.2 單體架構
單體架構的特點是應用程序前后端所有功能模塊的代碼都打包成一個文件,一般為*.war或*.jar格式,它通常運行在Weblogic、Tomcat等Web應用服務器中,對外提供Web服務。單體架構是一種比較傳統的軟件架構,如圖1-2所示。

圖1-2 單體架構
圖1-2是單體架構的典型架構圖,描述的是訂單管理系統的架構。整個應用程序包括前端展示代碼(Web UI),審單、開戶和發貨等訂單處理流程模塊,以及后臺使用單節點Oracle的數據庫系統。系統部署在Weblogic應用服務器中,通過部署多個Weblogic實例進行應用的橫向擴容,使用Nginx可以做請求的負載均衡。
下面簡要介紹單體架構的特點、優點和缺點。
1.2.1 單體架構的特點
(1)所有功能集成在一個工程項目中。
(2)所有功能打包成一個war文件或jar文件。
(3)通過部署應用集群進行應用擴容以提高性能。
1.2.2 單體架構的優點
(1)項目架構簡單。
(2)前期開發成本低,周期短。
(3)部署簡單。
1.2.3 單體架構的缺點
(1)開發效率低:所有的開發人員在一個項目中編寫代碼,提交代碼容易出現沖突。
(2)代碼維護難:各功能代碼耦合在一起,新加入的開發人員學習難度較大。
(3)部署不靈活:構建時間長,一旦有任何小的修改必須重新構建整個項目。
(4)穩定性不高:一個很小的問題也可能導致整個應用不可用。
(5)擴展性不足:無法滿足高并發情況下業務服務的快速擴容需求。
推薦閱讀
- Learning AngularJS Animations
- Getting Started with Qt 5
- 分布式微服務架構:原理與實戰
- R Deep Learning Essentials
- Rapid BeagleBoard Prototyping with MATLAB and Simulink
- 固態存儲:原理、架構與數據安全
- Spring Cloud微服務和分布式系統實踐
- 數字媒體專業英語(第2版)
- STM32自學筆記
- Mastering Machine Learning on AWS
- 基于網絡化教學的項目化單片機應用技術
- 微服務實戰(Dubbox +Spring Boot+Docker)
- Raspberry Pi Home Automation with Arduino
- 創客電子:Arduino和Raspberry Pi智能制作項目精選
- 現代多媒體技術及應用