分布式系統 DNS網域名稱設計與實踐(下)

2021-10-05 03:30:28 字數 2921 閱讀 1863

通過分布式系統 - dns網域名稱設計與實踐(上)我們了解:

dns的含義和網域名稱解析流程

dns協議

dns應用場景

dns劫持原因分析

如何快速檢測是否被劫持與商務解決方案

今天我們主要介紹:

如何通過技術手段解決dns網域名稱劫持

dns的配置策略與應用

cdn系統的技術分析與應用實踐

實現方式:

服務節點拓展後需要更新客戶端的伺服器節點ip檔案,客戶端通過http拉取伺服器ip列表。可以通過版本號判斷是否更新伺服器節點ip檔案

方案優點:

不需要每次請求做dns解析,節省時間

不需要每次請求做nginx**,節省時間

不需要每次拉取ip-list,節省流量

dns被劫持時仍可以使用本地ip

ps:獲取伺服器列表時,此時dns已經被劫持,通過http拉取,這裡還得通過dns解析嗎?

實現方式:

通過訪問httpdns介面,繞過localdns,同時基於容災考慮,保留次選使用運營商localdns的網域名稱解析方式。客戶端使用獲取到的ip位址,法師業務協議請求。

方案優點:

**網域名稱解析異常

httpdns能直接獲取到使用者ip

拓展性強,可實現更精細化的流量排程

綜上,高可用的dns設計,應用方面可用httpdns和基於ip位址直連。同時監控治理加強,進行實時監控,發現問題後及時推動解決。

網域名稱配置策略基本應用

如下圖,www.baidu.com.   配置業務網域名稱www.com的cname記錄。

通過cname配置a記錄,指向最終的真實ip

全域性負載均衡(gslb): 對伺服器和鏈路進行綜合判斷來決定由哪個地點的服務來提供服務,實現異地伺服器集群服務質量保證。

關鍵技術點

下圖中通過local dns可以判斷檢測與資料中心的聯通性,連線那個快則就用那個

基於以上場景的解決方案為智慧型dns。

智慧型解析網域名稱

近性表項

返回延時(round trip time)

返回響應最快的站點

具體描述:如下圖ww.xx.com首先訪問local dns,檢視 本地近性表項是否有解析過ip,如有直接返回。若沒有向dns伺服器發起探測,比較rtt值,rtt小的認為是比較快的返回。

內容分發網路,依靠部署在各地的邊緣伺服器,通過中心平台的負 載均衡、內容分發、排程等功能模組,使使用者就近獲取所需內容,降低網路擁塞,提高使用者訪問響應速度和 命中率。

cdn原理:

當終端使用者(北京)向www.a.com下的某資源發起請求時,首先向local dns(本地dns)發起網域名稱解析請求。

local dns檢查快取中是否有www.a.com的ip位址記錄。如果有,則直接返回給終端使用者;如果沒有,則向授權dns查詢。

當授權dns解析www.a.com時,返回網域名稱cname www.a.tbcdn.com對應ip位址。

網域名稱解析請求傳送至阿里雲dns排程系統,並為請求分配最佳節點ip位址。

local dns獲取dns返回的解析ip位址。

使用者獲取解析ip位址。

使用者向獲取的ip位址發起對該資源的訪問請求。

cdn網路拓撲圖:

使用者通過智慧型解析,獲得最近或者最搞笑的訪問邊緣節點集群

引入cdn優點

cdn適合快取哪些資料?

頁面、、流**、樣式指令碼等

cdn專業術語

cdn系統技術分析

內容路由:將使用者的請求分配到cdn中的最佳節點

通過dns全域性負載均衡找到響應最快的邊緣節點集群

通過本地負載均衡(llb)找到邊緣節點集群中最好的節點

可以通過節點探測和應用層與傳輸層實現重定向來實現內容路由

內容分發:源內容到cdn節點的cache過程

push: 熱點資料通過主動分發

pull::使用者請求按需分發

這裡需要考慮回源問題,可以通過快取時間、url設計、快取預熱等方式優化解決

內容儲存

源站儲存:由於訪問量大,可以用oss或者其他分布式儲存。同樣需要合理設計注意流量費用問題

cdn節點儲存

需要考量儲存支援的 資料格式、快取命中率、可靠性、穩定性等方面;流**可以通過分片拉取

內容管理

本地內容索引

本地內容拷貝

本地內容訪問狀態資訊收集

使用cdn資料一致性和高可用保障

cdn應用領域

分布式 分布式系統的設計

在計算機領域,當單機效能達到瓶頸時,一般有兩種方式解決效能問題 而分布式系統的設計說白了就是 如何合理將乙個系統拆分成多個子系統部署到不同機器上。講設計方法前,先介紹分布式系統的特性 1 分布性 空間中隨機分布。這些計算機可以分布在不同的機房,不同的城市,甚至不同的國家。2 對等性 分布式系統中的計...

高手之路 分布式鎖設計與實踐

mq訊息冪等性 在使用者對商品下單後,訂單狀態為待支付,在某一時刻使用者正在對該訂單做支付操作,商家對該訂單進行改價操作 存在問題 單點問題 官方建議 問題本質 分布式鎖是cp模型,redis集群是ap模型通過cp模型解決 儲存層產品對比 redis zookeeper etcd 一致性演算法 無p...

分布式系統設計準則

該文章需要整理 2015.3.13修改 分布式系統通常服務大請求 維護著大資料 快速響應 長時間可用。設計分布式後台服務需要考慮的東西很多,本文給出一些常用的設計準則,以備檢視。效能 快速響應 低延遲 可靠性 系統可靠就是同樣的請求返回同樣的資料 更新能夠持久化 資料不會丟失 可管理性 便於運維,整...