負載平衡演算法類型

負載平衡器會根據一組預先決定的規則來決定路由網路流量的位置。

學習目標

閱讀本文後,您將能夠:

  • 定義「負載平衡演算法」
  • 區分靜態和動態負載平衡演算法
  • 瞭解這兩種類別中的演算法類型

相關內容


想要繼續瞭解嗎?

訂閱 TheNET,這是 Cloudflare 每月對網際網路上最流行見解的總結!

請參閱 Cloudflare 的隱私權政策,了解我們如何收集和處理您的個人資料。

複製文章連結

使用 Cloudflare Pro 方案和我們的速度工具附加元件來提高網站效能

什麼是負載平衡演算法?

負載平衡器是一種軟體或硬體裝置,可防止任何一台伺服器過載。負載平衡演算法是負載平衡器用來在伺服器之間分配網路流量的邏輯(演算法是一組預先定義的規則)。

負載平衡有兩種主要方法。動態負載平衡使用的演算法會考慮每個伺服器的當前狀態並相應地分配流量。靜態負載平衡分配流量時不做這些調整。一些靜態演算法以指定的順序或隨機的方式向一個群組中的每個伺服器傳送等量的流量。

負載平衡演算法有哪些不同類型?

動態負載平衡演算法

  • 最少連線:檢查哪些伺服器在當時擁有最少的開放連線,並將流量傳送到這些伺服器。這假定所有連線需要大致相等的處理能力。
  • 加權最少連線:讓管理員能夠為每台伺服器分配不同的權重,假設一些伺服器可以比其他伺服器處理更多的連線。
  • 加權回應時間:計算每個伺服器的平均回應時間,並將其與每個伺服器開啟的連線數相結合,以確定將流量傳送到何處。該演算法向具有最快回應時間的伺服器傳送流量,確保為使用者提供更快的服務。
  • 基於資源:根據每個伺服器當時可用的資源來分配負載。在每台伺服器上執行的專門軟體(稱為「代理程式」)會度量該伺服器的可用 CPU 和記憶體,負載平衡器會在向該伺服器分配流量之前查詢該代理程式。

靜態負載平衡演算法

  • 循環配置資源:循環配置資源負載平衡使用 Domain Name System (DNS) 將流量輪流分配到一個伺服器清單中。權威的名稱伺服器將擁有一個網域的不同 A 記錄清單,並為每個 DNS 查詢提供一個不同的記錄。
  • 加權循環配置資源:允許管理員為每個伺服器指派不同的權重。被認為能夠處理更多流量的伺服器將收到稍多的流量。加權可以在 DNS 記錄中設定。
  • IP 雜湊:結合傳入流量的來源和目的地 IP 位址,並使用一個數學函數將其轉換為雜湊。連線根據雜湊值被指派到具體的伺服器。

Cloudflare 負載平衡如何運作?

Cloudflare 負載平衡使用健康情況檢查,將流量引向狀況良好的伺服器。它還使管理員能夠自訂處理區域流量的位置,以減少流量的傳輸距離。這種方法被稱為全球伺服器負載平衡 (GSLB)