search
Java升職加薪必備術

Java升職加薪必備術

java升職加薪必備技術分散式

隨著互聯網的快速發展,和雲服務概念的普及,使得我們在搭建系統的時候越來越傾向於分散式系統架構,也成了現在企業升職加薪的重要考核技術。

一、Java項目的架構方式

如下圖所示 ,Java項目大體上經歷了由單一應用架構到垂直應用架構再到分散式應用架構的一個過程,接下來我們就來詳細了解下這三種架構的變化和進步.

1. 傳統的架構思維 -> 單一應用架構

單一應用架構的意思就是一個項目就是一個系統 ,在21世紀初,大規模的企事業單位的信息電子化,湧現出一大批應用於企業內部信息管理的系統,如OA ,財務管理軟體,人事管理系統,ERP等,但是隨著系統的業務功能增多,代碼量增大,變得原來越來越難以維護,且不容易擴展,而且隨著系統的訪問量越來越大 ,系統的性能瓶頸也越來越突出.

2. 垂直應用架構 -> 一個系統拆分成多個子系統

垂直應用架構簡單來講就是將原有的單一應用架構的系統 拆分成多個子系統,

一定程度上解決了系統難於維護的問題,每個團隊可以負責維護自己的子系統,降低了維護成本,提升了開發效率

也解決了系統擴容的問題 隨著業務的擴展我們可以通過增加一個子系統來解決,不會影響其他的子系統.

同樣也在一定程度上解決了對系統訪問進行分流的問題,根據不同子系統的性質和訪問量進行合理服務部署規劃.

但是垂直應用架構中各個子系統存在著相同邏輯的一些業務代碼(許可權驗證,日誌記錄,緩存,系統安全,系統報表....),不能共用,容易造成信息孤島,重複造輪子.

3. 分散式架構 -> 一個系統拆分為多個服務

隨著垂直應用架構的子系統應用越來越多時,為了避免相同重複造輪子,我們將共用和核心的業務抽取出來,作為單獨的系統對外提供服務, ,是得各個子系統都可以復用,就演變成了如上圖所示的分散式何架構

架構一套大型的,成熟的分散式系統 ,要涉及到許多中間件的引用和支撐系統,這些中間件和支撐系統統稱為分散式系統的基礎設施

二.分散式系統的基礎設施及架構

當然分散式系統的基礎軟體設施還包含且不限於像數據分析/離線計算/數據倉庫/自動化運維等相關組件和框架,這些知識屬於大數據和運維等知識,在此不再贅述.

分散式系統架構圖

三、分散式需要了解的重點

ActivMQ 分散式消息匯流排

在大型分散式系統中,在遵循JMS規範的前提下 ,進行系統之間的大規模非同步消息通信和集中常用的通信機制。

能對JMS規範有深入的了解,以及分散式系統架構中的非同步通信機制。

高併發編程必備之NIO基礎

NIO的基本原理以及實現過程

能對傳統IO和NIO的區別進行系統的了解並能學會NIO的實現原理

Redis內存資料庫

在大型分散式系統中,怎樣在高併發的情況下解決某些非結構化數據快速存取的解決方案。

能對非關係資料庫和非關係資料庫有個系統的了解 以及Redis內存資料庫的基本數據類型和各自的應用場景。

高併發編程之NIO流行框架之Netty

NIO框架Netty的簡介以及netty的應用場景

能運用netty實現客戶端和伺服器端的基本通信

Lucene 全文檢索技術

在大型電商網站中,站內超過百萬計商品目錄的搜索解決方案。

能對全文檢索技術有個初步的了解,以及Lucene在站內搜索應用中的底層操作原理。

Duboo分散式服務框架

在分散式系統中,Duboo框架的應用場景和應用方式。

能了解Duboo的基本概念和原理,以及在分散式系統中的應用和傳統架構方式的區別

分享課上我會詳細講解現在流行的十大框架以及應用

還有更多精彩類容不容錯過過

熱門推薦

本文由 一點資訊 提供 原文連結

一點資訊
寫了5860316篇文章,獲得23271次喜歡
留言回覆
回覆
精彩推薦