- 微服務容器化開發實戰
- 尹為強
- 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)擴展性不足:無法滿足高并發情況下業務服務的快速擴容需求。
推薦閱讀
- 電腦維護與故障排除傻瓜書(Windows 10適用)
- AMD FPGA設計優化寶典:面向Vivado/SystemVerilog
- 筆記本電腦使用、維護與故障排除從入門到精通(第5版)
- Arduino BLINK Blueprints
- Machine Learning with Go Quick Start Guide
- OpenGL Game Development By Example
- Managing Data and Media in Microsoft Silverlight 4:A mashup of chapters from Packt's bestselling Silverlight books
- 單片機技術及應用
- Hands-On Deep Learning for Images with TensorFlow
- FPGA實驗實訓教程
- Arduino項目案例:游戲開發
- USB應用開發寶典
- Advanced Machine Learning with R
- The Reinforcement Learning Workshop
- 計算機應用基礎案例教程(Windows 7+Office 2010)