高可用是什么意思啊 門戶網(wǎng)站的技術(shù)架構(gòu)怎樣設計方案?
門戶網(wǎng)站的技術(shù)架構(gòu)怎樣設計方案?我參與了一個行業(yè)門戶的設計。我覺得我已經(jīng)解決了大型網(wǎng)站面臨的一系列問題和挑戰(zhàn),比如高并發(fā)訪問、海量數(shù)據(jù)處理、高可靠性運行等等。在實踐中,我提出了許多解決方案來實現(xiàn)各種技
門戶網(wǎng)站的技術(shù)架構(gòu)怎樣設計方案?
我參與了一個行業(yè)門戶的設計。我覺得我已經(jīng)解決了大型網(wǎng)站面臨的一系列問題和挑戰(zhàn),比如高并發(fā)訪問、海量數(shù)據(jù)處理、高可靠性運行等等。在實踐中,我提出了許多解決方案來實現(xiàn)各種技術(shù)架構(gòu)目標,例如高性能、高可用性、可伸縮性、可伸縮性和安全性。這些解決方案被更多的網(wǎng)站反復使用,從而逐漸形成了大規(guī)模的網(wǎng)站架構(gòu)模式。分布式應用和服務:除了提高網(wǎng)站性能和并發(fā)性,加快開發(fā)和發(fā)布速度,減少數(shù)據(jù)庫連接資源消耗之外,分層、分段的應用和服務模塊的分布式部署還可以使不同的應用重用公共服務,方便業(yè)務功能擴展。
2. 分布式靜態(tài)資源:JS、CSS、logo、image等網(wǎng)站靜態(tài)資源獨立部署、分布式,采用獨立域名,通常稱為動靜分離。靜態(tài)資源分布式部署可以降低應用服務器的負載壓力;通過使用獨立域名加快瀏覽器的并發(fā)加載;由負責用戶體驗的團隊負責網(wǎng)站的開發(fā)和維護,有利于網(wǎng)站的分工與合作,使不同的用戶體驗不一樣工作類型可以是專門的。
3. 分布式數(shù)據(jù)與存儲:大型網(wǎng)站需要以P為單位處理海量數(shù)據(jù),單臺計算機無法提供如此大的存儲空間,這些數(shù)據(jù)需要分布式存儲。除了傳統(tǒng)關(guān)系數(shù)據(jù)庫的分布式部署外,各種面向網(wǎng)站應用的NoSQL產(chǎn)品也都是分布式的。
4. 分布式計算:嚴格來說,應用程序、服務和實時數(shù)據(jù)處理都是計算。除了這些在線業(yè)務,網(wǎng)站還有大量用戶沒有直觀感受的后端業(yè)務需要處理,包括搜索引擎的索引構(gòu)建、數(shù)據(jù)倉庫的數(shù)據(jù)分析和統(tǒng)計等,這些服務的計算規(guī)模非常大。目前,Hadoop及其MapReduce分布式計算框架廣泛應用于此類批量計算的網(wǎng)站,其特點是移動計算而不是移動數(shù)據(jù)。將計算程序分發(fā)到數(shù)據(jù)所在的位置,加快了計算和分布式計算的速度。
總之,分布式設計思想很多,比如支持在線服務器配置實時更新的分布式配置,在分布式環(huán)境下實現(xiàn)并發(fā)和協(xié)作的分布式鎖,支持云存儲的分布式文件系統(tǒng)。
如何設計全鏈路99.99%高可用架構(gòu)?
我設計了一個高可用的交易系統(tǒng),請參考。
具體來說,考慮了通信高可用性和服務高可用性這兩個維度,以確保平臺支持服務的分布式部署、集群容錯和負載平衡。具體如下:
](1)通信高可用
事務系統(tǒng)集群模式為全節(jié)點在線模式,應用集群的所有內(nèi)部節(jié)點可以同構(gòu)、水平擴展和負載均衡。當某個節(jié)點發(fā)生故障時(如下圖所示),集群會自動隔離故障節(jié)點,并將事務請求轉(zhuǎn)移到其他正常節(jié)點;當檢測到原來的故障節(jié)點恢復時,集群會自動包含可用節(jié)點。
與傳統(tǒng)的ha模式相比,全節(jié)點在線模式無切換耐火期,保證了系統(tǒng)7*24小時的服務能力。
(2)服務高度可用
服務發(fā)布和管理通過注冊表完成。
當一個服務的多個提供者之一失敗或停止更新時,注冊表將及時獲取服務狀態(tài)信息并將其推送到使用者。使用者獲得的可用服務列表將消除已停止的服務,并僅將其發(fā)送給正常的服務提供者。當服務恢復時,注冊表還會將新的服務地址推送到使用者以完成服務恢復。