DNS 負載平衡可將使用者導向至單一網域的多個 IP 位址,藉此改善應用程式可用性和效能。
閱讀本文後,您將能夠:
相關內容
訂閱 TheNET,這是 Cloudflare 每月對網際網路上最流行見解的總結!
複製文章連結
負載平衡是將流量分配到多台伺服器以提高效能和可用性的做法。組織使用不同形式的負載平衡來加快網站和專用網路的速度。如果沒有負載平衡,大多數網際網路應用程式和網站將無法有效處理流量或正常運作。
DNS 通常被稱為網際網路的電話簿,因為它將網站網域(如 google.com 或 nytimes.com)轉譯為 IP 位址。IP 位址是伺服器用來識別網站和連接到網際網路的任何裝置的長數字標籤。透過將網域名稱轉譯為 IP 位址(一個稱為 DNS 解析的過程),DNS 使人們不必記住長長的數字序列就可存取網站和應用程式。
在 DNS 解析中,網際網路使用者的瀏覽器與 DNS 伺服器聯絡,以請求目的地網站的正確 IP 位址。從域請求 IP 位址的行為稱為 DNS 查詢。
基於 DNS 的負載平衡是一種特定類型的負載平衡,它使用 DNS 在多個伺服器之間分配流量。它透過提供不同的 IP 位址回應 DNS 查詢來做到這一點。負載平衡器可以使用各種方法或規則來選擇分享哪個 IP 位址以回應 DNS 查詢。
一種最常見的 DNS 負載平衡技術是循環配置資源 DNS。
循環配置資源 DNS 與其他類型的 DNS 型負載平衡具有相同的目標:透過分配流量來提高網站的效能和可靠性。但是,與使用基於軟體或基於硬體的專用負載平衡器相反,循環配置資源 DNS 使用一種稱為權威名稱伺服器的 DNS 伺服器來執行負載平衡。
權威域名伺服器保存稱為 A 記錄或 AAAA 記錄的 DNS 記錄,其中包含網域名稱及其匹配的 IP 位址。當用戶端提交 DNS 查詢時,查詢的目標是找到 A(或 AAAA)記錄。在基本設定中,網域會將單個 A 記錄綁定到單個 IP 位址,這意味著 DNS 查詢將始終傳回相同的 IP 位址。
但是,在循環配置資源 DNS 中,網域有多個 A 記錄,每個記錄與不同的 IP 位址相關聯。隨著 DNS 查詢進入,IP 位址以循環方式輪換,將請求分散到關聯的伺服器上。
如果循環配置資源 DNS 中有五個 IP 位址,則 DNS 查詢會為第六個請求返回 1 號 IP 位址。因為每個 IP 位址對應不同的伺服器,所以這種設定減少了每個伺服器的工作負載,使其不太可能因請求過多而不堪重負。
要瞭解循環配置資源 DNS 的運作原理,可以將存取網站的行為想像成向公司傳送郵件。假設公司使用郵政信箱接收客戶郵件,但他們收到的郵件超出了單個郵政信箱的處理能力。為了幫助解決這個問題,公司可以購買更多的郵政信箱。
為了使多個郵政信箱策略發揮作用,公司必須確保沒有一個郵箱會溢出郵件。這意味著當客戶查找公司的郵寄地址時出現的郵政信箱地址需要按順序交替出現。1 號客戶將看到 1 號郵政信箱地址;然後,2 號客戶將看到 2 號郵政信箱地址。這種方法將透過增加整體容量來幫助減輕單個郵政信箱的負擔。如果沒有額外的郵箱,單個郵政信箱很容易溢出,導致延遲接收郵件。
就像在郵政信箱範例中一樣,循環配置資源 DNS 可以保護伺服器不被請求淹沒,避免在處理請求時出現延遲。
雖然循環配置資源方法很流行,但它並不是路由流量的唯一方法。大多數負載平衡器允許網域擁有者從多個流量路由規則中進行選擇。
基於 DNS 的負載平衡配置的一個範例是加權演算法,其中根據處理流量的能力為不同的伺服器分配相對權重。然後按比例分配流量。例如,如果伺服器 A 的容量是伺服器 B 的兩倍,那麼負載平衡器將向伺服器 A 提供兩倍於伺服器 B 的流量。它會透過傳回伺服器 A 的 IP 位址回應 DNS 查詢來做到這一點。加權循環配置資源或加權最少連線是此類負載平衡演算法的範例。
許多基於 DNS 的負載平衡方法是動態的,這意味著負載平衡器在分配請求時會考慮伺服器健康情況和伺服器回應時間。動態演算法可以採取多種形式。「最少連線」是一種動態負載平衡演算法。在最少連線設定中,伺服器監控確定哪個伺服器當前具有最少的開放連線,然後透過提供其 IP 位址來回應 DNS 查詢,以將傳入流量分配給該伺服器。
地理位置是另一種廣泛使用的動態演算法。在此設定中,負載平衡器將來自區域的請求分配給定義的伺服器或伺服器集。例如,來自法國的所有請求可能會進入「伺服器 F」,而來自西班牙的所有請求可能會進入「伺服器 S」。
基於鄰近度的演算法會執行類似的事情。在此設定中,負載平衡器將流量動態分配給離使用者最近的伺服器。
動態演算法遵循略有不同的規則,但最終做的是相同的事情:監控伺服器健康情況並最佳化流量分配方式。
入門
關於效能
效能和 SEO
更多有關效能的資訊
字彙
學習中心導覽