更新時間:2020-07-27 14:58:59 來源:動力節點 瀏覽2625次
深入了解Java架構技術知識詳解,對于“架構”來講,理論上劃分了5種架構視圖,分別是:邏輯架構、開發架構、運行架構、物理架構、數據架構。根據名字,大家都可能大概能猜到其側重點和含義。這里先用通俗的文字簡單介紹下,便于大家理解,大家可以不必糾結概念和這些理論。
邏輯架構:
邏輯架構關注的是功能,包含用戶直接可見的功能,還有系統中隱含的功能。或者更加通俗來描述,邏輯架構更偏向我們日常所理解的“分層”,把一個項目分為“表示層、業務邏輯層、數據訪問層”這樣經典的“三層架構”。
開發架構:
開發架構則更關注程序包,不僅僅是我們自己寫的程序,還包括應用程序依賴的SDK、第三方類庫、中間價等。尤其是像目前主流的Java、.NET等依靠虛擬機的語言和平臺,以及主流的基于數據庫的應用,都會比較關注。和邏輯架構有緊密的關聯。
運行架構:
顧名思義,更關注的是應用程序運行中可能出現的一些問題。例如并發帶來的問題,比較常見的“線程同步”問題、死鎖問題、對象創建和銷毀(生命周期管理)問題等等。開發架構,更關注的是飛機起飛之前的一些準備工作,在靜止狀態下就能規劃好做好的,而運行架構,更多考慮的是飛機起飛之后可能發生的一些問題。
物理架構:
物理架構,更關注的系統、網絡、服務器等基礎設施。例如:如何通過服務器部署和配置網絡環境,來實現應用程序的“可伸縮性、高可用性”?;蛘吲e一個實際的例子,如何通過設計基礎設施的架構,來保障網站能支持同時10W人在線、7*24小時提供服務,當超過10W人或者低于10W人在線時,可以很方便的調整部署架構來支撐。
數據架構:
數據架構,更關注的是數據持久化和存儲層面的問題,也可能會包括數據的分布、復制、同步等問題。更貼切來講,如何選擇需要的關系型數據庫、流行的NOSQL,如何保障數據存儲層面的性能、高可用性、災備等等。很多時候,和物理架構是有緊密聯系的,但它更關注數據存儲層面的,物理架構更關注整個基礎設施部署層面。
上面講了那么多,相信國內很少有公司是嚴格按照這五種視圖去分工和設計的。其實在筆者眼中,架構大致分為兩種:軟件架構、系統架構。前三種視圖,可以歸納為軟件架構,而后兩種架構,則歸為系統架構。這也比較符合國內大部分中小型互聯網公司的現狀。
根據應用特性的不同,關注側重點可能不同。例如,某些門戶類的互聯網應用,讀多寫少而且業務相對比較簡單,則更加關注“高性能、可伸縮性、可用性”等方面。對于更加復雜的應用,例如電商類大規模交易型的應用,對每個層面和每個環節都會比較關注。對于業務型的系統,例如一些生產型企業使用的ERP,或者僅供企業內部使用的一些MIS、OA應用,通常更關注功能和復雜的業務和實現和擴展,而對性能等方面又可能不要太高,這類應用則更關注純軟件架構層面。這里,不展開做具體討論。所以很多時候,架構師也需要是一個團隊,而不是一個人“全棧”。
以上就是動力節點java培訓機構的小編針對“深入了解Java架構技術知識詳解”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習