阿里雲解決方案架構師,講述分散式架構雲平臺解決方案

java架構發表於2019-05-12

技術架構

分散式架構雲平臺在充分分析IT技術發展趨勢,遵循集中化、標準化、整合化、可靠化和可擴充套件化的設計原則,以價值創造為使命,以規範化、一體化、智慧化的雲平臺為支撐,實現資訊的透明共享、業務的敏捷協同、管控及時、決策科學為設計目標,選擇傳統成熟的J2EE、SOA、應用整合和BI資訊科技和新一代的雲端計算、大資料、移動應用資訊科技相結合的技術路線。

分散式架構雲平臺規劃設計了集約化、雲架構動態配置的企業IT基礎設施;

共享化、集中資料儲存管理的企業資料資源服務;

元件化、平臺化、柔性整合的企業應用支撐服務;

標準化、服務化、整合智慧的企業業務應用服務;

一站式、多終端服務的企業資訊展示互動服務等技術層,每層又包括若干成熟穩定的技術元件,各技術層,自下而上,層層支撐,各技術元件鬆散耦合,互聯互通,科學高效,易於擴充套件,減少了資訊孤島,增強了系統的標準化和集約化,優化了系統的使用者體驗,提高工作效率。

webp

分散式架構雲平臺技術設計原則

先進性原則

在整體設計和實現上,依託雲端計算、大資料領域的知名開源專案(如Hadoop、Spark、OpenStack等)。由於遵循了業界廣泛認可的事實標準,可以充分借力全球生態圈的資源,推動軟硬體分層解耦,不斷提升相容性。相容多種異構物理裝置,避免廠商繫結。資料層面,支援多種資料來源,包括結構化/非結構化型別的資料處理,資料本身、資料計算也都支援開放共享。優先採用先進成熟的技術元件,搭建穩定並且高效的大資料雲端計算管理平臺,並在平臺基礎上實現大規模的資料採集與分析的相關業務應用。平臺設計以滿足當前的業務功能為主,兼顧考慮未來發展的趨勢。

可靠性原則

可靠性包括整體可靠性、資料可靠性和單一裝置可靠性三個層次。通過大資料雲端計算平臺的分散式計算、儲存架構,從整體系統上提高可靠性,降低系統對單裝置可靠性的要求;平臺設計方面保證基於hadoop和虛擬化的叢集系統平臺的穩定與高效,提供針對現有底層硬體裝置的Hadoop和虛擬化相關技術元件的調優,以及對於整體叢集的配套監控系統的搭建和叢集維護與管理等相關方案;應用設計方面採用明確的應用分層架構,一方面可實現上層資料應用與底層基礎資料的依賴分離,實現應用架構上的解耦;另一方面可提高上層資料的分析效率與降低執行成本。採用相關的容錯技術和故障處理技術,保證資料應用的安全可靠,保證資料分析平臺可用性達到使用要求。

安全保密性

採用統一的使用者認證,統一的使用者、許可權管理和控制、密碼控制等多種安全和保密措施。為保證資訊的安全性,對內部網上的資訊建立符合安全要求的防火牆、***檢測、數字證書、防病毒、資料加密技術等,能夠嚴格有效地防止外來非法使用者***,能夠避免遭受網路×××,防止失密情況的發生,防止非法侵入帶來的損失。

可擴充套件性

應用開發平臺採用模組化建設和擴充套件模式。支援小規模起步,線性擴充套件,以滿足不同場景,不同投資計劃和規模的要求;隨著資料規模的擴大、應用的完善,現在資料平臺能夠在不影響當前使用者正常使用的情況下,靈活、方便地進行叢集擴容。

開放性

雲端計算平臺是在成熟落地的方案上完全自主研發,主要應用開源技術。

分散式關鍵技術

webp

微服務

將系統功能劃分為最小服務單元,完成單一功能,每個服務獨立部署,服務間通過互相呼叫形成完整業務邏輯。主要特點:

-高內聚、低耦合

-開閉原則

-高效率

-彈性計算

分散式事務

通過訊息機制和分散式鎖實現分散式事務,在微服務架構中保證業務邏輯的完整性。主要特點:

-訊息佇列

– 原子操作

– 回滾機制

跨機器呼叫

將任務分配在更多的節點上去執行,跨機器的呼叫取代原來單個節點內、程式內的呼叫。主要特點:

– 多節點化

– 同步+非同步

伸縮與容錯

橫向擴充套件代替縱向擴充套件,使得伸縮性變得更好,整體容錯性大大提升。主要特點:

– 一致性雜湊

– 多副本

平臺關鍵元件

webp

企業服務匯流排

採用Dubbo+Zookeeper技術作為企業服務匯流排,對所有微服務進行管理,服務匯流排具有以下特點:

– 自動發現和註冊服務,即插即用。

– 可為微服務提供負載均衡策略,需要其他負載均衡軟體。

– 統計與監控服務呼叫情況並記錄響應時間。為程式調優及擴充套件提供統計資料。

訊息佇列

平臺的訊息佇列採用Kafka技術,Kafka是高吞吐量的分散式釋出訂閱訊息系統,它可以處理消費者規模的網站中的所有動作流資料。主要用於:

– 服務之間的訊息通訊,實現完整的業務邏輯。

– 提供大併發業務的佇列服務,避免大併發下服務崩潰問題。

分散式檔案系統

平臺採用HDFS和FastDFS的分散式檔案系統。

HDFS主要解決超大檔案的儲存(如日誌檔案、視訊檔案等)及HBase等大資料儲存。主要分為NameNode和DataNode,NameNode儲存檔案的META資訊,DataNode儲存資料塊。客戶端呼叫時從Name節點讀取到檔案的多個資料塊資訊,從多臺伺服器上獲取後合併為一個檔案。FastDFS是輕量級的分散式檔案解決方案,主要解決儲存海量小檔案,如上傳圖片、上傳檔案、資原始檔等等海量的小檔案,這些檔案不適合HDFS儲存,所以採用FastDFS儲存。

雲伺服器IAAS

平臺採用OpenStack系列技術,支援Xen/KVM/Hyper-V/ESX等虛擬化技術。為分散式和大資料提供彈性計算服務。


相關文章