系統架構_新手學習
傳統的架構 :
500併發 傳統的架構是所有的功能都寫在一起,可以支撐預設的200訪問量,極限是500,超過了一定數量雖然不會崩潰,
但是會丟失請求,這是開發中不允許的,結構圖如下
以上架構存在的問題 : 功能耦合度高,學習的成本高 維護成本高,不利於升級 如果併發量大,不能解決 併發的問題......
1000併發
如圖,一下架構可以支撐1000的併發量
缺點:系統不能水平闊咱(不能針對功能模組) 使用者登陸複雜問題 因為多個tomcat 無法session共享,
session問題是可以解決的,這裡提供的解決方案是: 使用tomcat設定session複製,這種配置是以
session廣播的形式共享,比較消耗資源,頻寬;
如果使用20臺電腦做叢集,當tomcat叢集中節點數量增加,服務能力先增加,後下降,所以
叢集是不能有太多節點的,大概五個左右....
分散式架構
分散式架構就是按照功能來拆分系統模組,可以單獨為某個節點新增伺服器,分散式架構需要系統之間的
配合才能實現整個業務邏輯這就叫分散式,
叢集 跟 分散式的區別
叢集 : 相當於是把一份程式碼複製成了多份並部署在了伺服器上,沒臺服務能單獨執行,這叫叢集
分散式 : 相當於是把程式碼按照功能拆分成了多份,然後分別部署在了tomcat上,多個子系統相互
協作才能完成業務流程系統之間需要進行通訊。
分散式的優點:
1.多個模組之前,需要使用介面通訊,降低了耦合,
2.可以針對個別模組來增加服務,
4.增加功能時只要增加一個子模組就可以了
5.可以靈活的進行分散式部署
缺點:
1. 多個系統之前需要互相通向,增加了程式碼
2.各個模組的一些通用程式碼不能使用,
SOA架構
SOA:Service Oriented Architecture面向服務的架構。也就是把模組按照服務層來拆分成服務層,
表現層,服務層只需要包含業務邏輯,而表現層只需要接收請求,分發轉向就好,業務邏輯都是呼叫服務層來實現 的,每一個工程都能獨立部署
分散式架構和SOA架構區別:
分散式跟SOA的概念有點不一樣,分散式是按照功能劃分的,而SOA是按照服務劃分的,倆者架構是可以共存的,