天天看點

一個五年架構師憑什麼基本年薪酬就可以達到50萬

架構師,我想很多人都知道,其實該職位頭銜在最早的IT領域是沒有的,它是近些年來由網際網路的發展所引發的需求,因為現階段的資料量及高并發的活躍好動,引起了不少傳統的技術人員的力不從心,企業愈發關注到了系統架構的重要性,是以不同行業開始招募架構技術人員,架構師就誕生了。 文末有架構師面試題和架構資料,有興趣的可以看看哦

一個五年架構師憑什麼基本年薪酬就可以達到50萬

架構設計的條件

以下三個條件不适合做架構設計

對架構不感興趣,但又迫于需求;

入IT行業,年限小于4年的;

主觀能動性弱,又安于現狀的;

架構設計的優勢

更好的梳理業務的結構體系;

更好的拓展、維護及性能優化;

更好的适應企業業務靈活的推進;

更好的适應大資料的沖洗和應對;

更好的穩定性、低成本及快速疊代;

一個五年架構師憑什麼基本年薪酬就可以達到50萬

架構設計時候需要注意的地方

架構設計需要注意的地方,不是怎麼把架構搭建起來,而是必須根據業務需求,嚴格分析,實作該需求需要什麼技術會更好及更長遠發展的考慮;

另外,建構好的架構雖然可以運作,但是性能需要跟起來,否則架構設計會适得其反,增加不必要的工作量,那麼下面就詳細介紹下架構設計的政策。

本篇主要是介紹架構設計的思路及應用的核心技術,供在架構設計的同學參考借鑒哦!

平台的需求

客戶需求

線上購物、線上支付或貨到付款;

購買商品後,客戶可以與客服溝通;

購買商品過程,物流的管理及跟蹤;

收取到商品後,商品、物流評價打分;

客戶的需求為最高,也代表了企業的核心需求,當然,企業需求還包括其它很多非功能性需求,具體請檢視需求梳理部分。

一個五年架構師憑什麼基本年薪酬就可以達到50萬

平台的業務架構

根據業務的需求進行子系統子產品劃分,可以劃分為商品子系統、購物子系統、支付子系統、物流子系統、客服子系統、評論子系統;而非核心需求可拆分出客服子系統、評論子系統及接口子系統。另外,根據各個子系統的核心等級,可拆分出核心子系統和非核心子系統,前者包括商品子系統、購物子系統、支付子系統及物流子系統;後者,則包括評論子系統、客服子系統及接口子系統。需要注意的是一般大型電商平台的物流系統是單獨分離出來的系統(入庫、出庫、庫存管理、配送管理及貨品管理),而這裡劃分為子系統的主要目的是為示範核心架構,本架構中物流子系統一般作為對接和管理獨立子系統的對接子產品哦。

1、業務拆分目的

為了解決各個子產品子系統間的耦合、維護及拓展性;

友善單獨部署子系統,避免集中部署導緻一個出問題,全部不能用;

配置設定專門的團隊,負責具體的子系統,最大化工作效率安排;

應對大資料,高壓力時,保護核心子系統正常使用;

2、業務的架構圖
一個五年架構師憑什麼基本年薪酬就可以達到50萬

在上面的業務架構圖中,将核心和非核心業務進行拆分,同時每個系統都要獨立部署實作,做到大資料量壓下,各個系統獨立運作,提高可用性,必要時可以暫停掉非核心系統的資源開銷,保證核心業務正常為使用者服務。

平台的技術架構

在上面業務架構圖基礎上,我們需要一個技術架構的演變過程,一切隻為滿足使用者的體驗和支撐為前提,是以技術架構的搭建不是一蹴而就的,而是随着業務的不斷衍變,系統的架構會逐漸完善更新,以實作應對業務資料量的沖擊。

1、基本的架構設計

記得很早的時候,很多中小企業所采用的架構設計十分簡單,基本使用一台伺服器來滿足一切需求部署,比如:一台伺服器同時用作應用部署、資料庫存儲以及圖檔存儲等,不料的是待使用者資料達到50萬以上,系統出現很多性能問題,盡管對資料庫和程式做個各種性能優化,結果仍無明顯改善,架構如下:

一個五年架構師憑什麼基本年薪酬就可以達到50萬

後來,IT程式猿發現圖檔的讀寫嚴重影響了系統性能,并将圖檔單獨存放在獨立伺服器中,并且在架構中引入了Cache中間件,比如:Memcache,這種做法是可取的,而且比原來性能提高了1-2個性能級别,架構設計如下:

一個五年架構師憑什麼基本年薪酬就可以達到50萬
2、初級的架構設計

前幾年,一般的電商網站的做法是選用三台伺服器,一台部署應用,一台部署資料庫,一台部署NFS檔案系統,做到将各個規模龐大并耗用性能的部分剝離到不同伺服器裝置,再配備必要的緩存中間件,基本可以滿足近1000萬的資料量,具體的架構圖如下:

一個五年架構師憑什麼基本年薪酬就可以達到50萬

但是,目前主流使用的網站架構已經不同,大多采用叢集的方式來實作負載均衡和高可用性,架構可以是下面的樣子:

一個五年架構師憑什麼基本年薪酬就可以達到50萬

注意:

如果涉及到多台網站伺服器的話,就會存在Session如何同步的問題,一般也是最為常用的做法,就是使用Cache中間件來存儲和管理Session資訊。

3、優化的架構設計

這裡為解決高并發,高可用的大型電商網站的架構設計方案,主要采用了分布式、叢集、負載均衡、反向代理、消息隊列及多級緩存技術。該架構設計方案,是現今比較流程的大型電商網站采用的架構模式,比如:淘寶、京東等,也許會有細微不同的地方,但大同小異哦!具體的架構圖方案如下:

一個五年架構師憑什麼基本年薪酬就可以達到50萬

平台架構的總結

這裡主要總結的是優化架構,架構按層次結構羅列組織,共分為四層,層次分工明确,高拓展,低耦合,負載均衡、叢集、分布式及緩存等技術的使用,架構如下:

一個五年架構師憑什麼基本年薪酬就可以達到50萬

我這裡一共有30個分享BATJ架構師面試的問題,這裡分享幾個給大家回答回答:

1、多線程同步有哪幾種方法?

2、violatile 關鍵字的作用?

3、常用的幾種線程池并講講其中的工作原理。

4、線程池啟動線程 submit()和 execute()方法有什麼不同?

5、什麼是活鎖、饑餓、無鎖、死鎖?

6、什麼是守護線程?有什麼用?

7、一個線程運作時發生異常會怎樣?

8、線程 yield()方法有什麼用?

9、Fork/Join 架構是幹什麼的?

10、說說線程安全的和不安全的集合。

11、Java 記憶體模型是什麼,哪些區域是線程共享的,哪些是不共享的?

繼續閱讀