【java】架構演變學習
【前言】
之前專案上用的是dubbo的框架,不知道為什麼。 最近學習宜立方商城這個專案,視訊的老師有講。 在此總結記錄一下。
【正文】
1.傳統架構
適用於併發量小的情況下。
2.1000併發的時候
一臺tocat伺服器預設支援併發量為150,理論上能達到最大併發量250,所以此時我們要設定tomcat叢集,但是tomcat叢集會隨著節點數量的增加,服務能力先增加後下降。所以增加叢集中節點數量不能成為解決併發問題的不二法門。 一般節點為5個左右
3.10000併發時
出現了分佈時架構,把系統按照功能點拆分,單獨為某一個節點新增伺服器。需要系統之間配合才能完成整個業務邏輯。
分散式架構:多個子系統相互協作才能完成業務流程。系統之間需要進行通訊。
叢集:同一個工程部署到多臺伺服器上。
分散式架構:
把系統按照模組拆分成多個子系統。
優點:
1、把模組拆分,使用介面通訊,降低模組之間的耦合度。
2、把專案拆分成若干個子專案,不同的團隊負責不同的子專案。
3、增加功能時只需要再增加一個子專案,呼叫其他系統的介面就可以。
4、可以靈活的進行分散式部署。
缺點:
1、系統之間互動需要使用遠端通訊,介面開發增加工作量。
2、各個模組有一些通用的業務邏輯無法共用。
4.基於soa的架構
SOA:Service Oriented Architecture面向服務的架構。也就是把工程拆分成服務層、表現層兩個工程。服務層中包含業務邏輯,只需要對外提供服務即可。表現層只需要處理和頁面的互動,業務邏輯都是呼叫服務層的服務來實現。
因為表現層和服務層成為了不同的工程,所以要實現一個功能就需要兩個系統間進行通訊。那麼遠端通訊有哪幾種方式呢?
1、Webservice:效率不高基於soap協議。專案中不推薦使用。
2、使用restful形式的服務:http+json。很多專案中應用。如果服務太多,服務之間呼叫關係混亂,需要治理服務。
3、使用dubbo。使用rpc協議進行遠端呼叫,直接使用socket通訊。傳輸效率高,並且可以統計出系統之間的呼叫關係、呼叫次數。
例項:宜立方商城的架構圖:
【總結】
事物之間是存在普遍聯絡的,發展是個長期的過程。
相關文章
- Fabric架構演變之路架構
- 系統架構演變架構
- 架構設計之架構的演變架構
- 滴滴機器學習平臺架構演進機器學習架構
- Java架構師如何學習?Java架構
- 面向資料架構的雲演變架構
- 淺談網路架構及其演變架構
- 滴滴機器學習平臺架構演進之路機器學習架構
- 故事篇:資料庫架構演變之路資料庫架構
- Java進階學習之Java架構師的學習路線Java架構
- 服務架構學習與思考(12):從單體架構到微服務架構的演進歷程架構微服務
- 分散式資料庫的架構演變之路分散式資料庫架構
- Java分散式架構的演進過程Java分散式架構
- 學習Java架構師的路線分享Java架構
- 高效能、高可用平臺架構演變史架構
- 高併發下的伺服器架構演變伺服器架構
- 架構演進之「微服務架構」架構微服務
- codis架構學習架構
- 獨家解讀 | 滴滴機器學習平臺架構演進之路機器學習架構
- 系統架構都經歷了怎樣的演變?架構
- Redis 架構演變與 Redis-cluster 群集讀寫方案Redis架構
- 架構的演進, 阿里資深Java工程師表述架構的腐化之謎架構阿里Java工程師
- 架構的演進,阿里資深Java工程師表述架構的腐化之謎架構阿里Java工程師
- Java架構師的培訓要學習什麼?Java架構
- 微服務架構學習與思考(07):企業團隊組織架構如何變革?微服務架構
- Git 學習記錄之演變歷史Git
- 聊聊演進式架構架構
- Airbnb的架構演進AI架構
- Serverless 架構的演進Server架構
- 架構學習-多工架構
- 奈飛架構Netflix從單體到微服務演變圖架構微服務
- java培訓分享:java培訓架構師學習線路圖Java架構
- 今日頭條架構演進之路——高壓下的架構演進專題架構
- 餓了麼即時配送分流的可運營架構演變架構
- MyCat 啟蒙:分散式系統的資料庫架構演變分散式資料庫架構
- 資料治理實踐:後設資料管理架構的演變架構
- 帶你認識網際網路架構的演變過程架構
- Python後端架構演進Python後端架構
- Serverless 架構模式及演進Server架構模式