DNS域名解析是利用DNS處理域名解析請求的同時進行負載均衡處理的一種方案。
以下圖,
算法
在DNS服務器中配置了多個記錄:
www.buzhidao.com IN A 192.100.80.一、
www.buzhidao.com IN A 192.100.80.二、
www.buzhidao.com IN A 192.100.80.3。
每次請求,域名解析請求都會根據負載均衡算法計算出一個不一樣IP地址返回,這樣A記錄中配置的多個服務器就構成一個集羣,並實現負載均衡。以上圖爲例,用戶請求域名www.buzhidao.com,DNS根據A記錄和負載均衡算法獲得一個IP地址:192.100.80.3,返回給瀏覽器;瀏覽器根據該IP地址,訪問真實物理服務器192.100.80.3.
DNS域名解析負載均衡的優勢是將負載均衡的工做交給了DNS服務器,省掉了網站管理維護負載均衡服務器的麻煩,同時許多DNS還支持基於地理位置的域
名解析,也就是會將域名解析成距離用戶地址位置最近的一個服務器地址,能夠加快用戶訪問速度,提升性能。可是DNS域名解析負載均衡也有缺點,目前DNS是多級解析,每一級DNS均可能緩存A記錄,當須要下線一臺服務器後,即時修改了DNS的A記錄,要使其生效也須要較長時間,這段時間DNS依然會將域名解析到已經下線的服務器,致使用戶訪問失敗;而DNS負載均衡的控制通常都在域名服務商處,網站沒法對其作更多改善和管理。
實際上,大型網站老是部分使用DNS域名解析,利用域名解析做爲第一級負載均衡手段,即域名解析獲得的一組服務器並非實際提供服務的物理服務器
,而是一樣提供負載均衡的內部服務器,這組內部服務器,再進行負載均衡,將請求分發到實際的提供服務器的服務器上。瀏覽器