全部產品
Search
文件中心

Server Load Balancer:通過配置相同網域名稱不同路徑的轉寄策略實現精準流量轉寄

更新時間:Nov 15, 2025

傳統負載平衡CLB預設將所有流量指向監聽配置的後端伺服器組,可能導致資源分派不均、效能下降和營運複雜。隨著業務擴充,這種配置無法滿足多樣化需求。通過配置CLB監聽的轉寄策略,可以將流量引導至指定後端伺服器組,實現流量的精細化管理和服務隔離,從而提升資源使用率,保障服務穩定性並最佳化使用者體驗。

功能簡介

CLB監聽的轉寄策略允許您基於網域名稱和URL路徑將接收到的用戶端請求精準地分配到不同的後端伺服器上,以實現高效、合理的流量分發。

關鍵特性

  • 網域名稱轉寄策略

    • 匹配模式:支援精確匹配與萬用字元匹配(包括單級與多級萬用字元),如www.aliyun.com為精確匹配,*.aliyun.com*.market.aliyun.com為萬用字元匹配。

    • 匹配優先順序:遵循精確匹配 > 小範圍萬用字元 > 大範圍萬用字元的原則,確保最精確的規則優先執行。

      下表展示了匹配優先順序的樣本,其中 “✓” 表示匹配,“×” 表示不匹配。

      模式

      請求測試URL

      配置的轉寄網域名稱策略

      www.aliyun.com

      *.aliyun.com

      *.market.aliyun.com

      精確匹配

      www.aliyun.com

      ×

      ×

      泛網域名稱匹配

      market.aliyun.com

      ×

      ×

      info.market.aliyun.com

      ×

      ×

  • URL路徑轉寄

    匹配邏輯:基於URL路徑的首碼最長相符,如配置/abc/abcd,請求/abcde時將優先匹配/abcd規則。

  • 策略組合:可在同一監聽下配置多條策略,結合網域名稱與URL路徑,實現複雜流量分發情境,如區分讀寫請求至不同伺服器組。

工作原理

您可以在一個監聽下添加多條轉寄策略,每條轉寄策略關聯不同的虛擬伺服器組。匹配策略如下圖所示。當您沒有配置任何轉寄策略的時候,負載平衡統一將請求轉寄至監聽配置的預設伺服器組。 當您配置了轉寄策略的時候,負載平衡會優先匹配轉寄策略中的網域名稱或者路徑,如果可以匹配到,則轉寄至轉寄策略中的伺服器組,如果無法匹配到,則轉寄至監聽配置的預設伺服器組。

適用情境

  • 微服務架構:在微服務架構設計中,應用程式由多個獨立的子服務組成,這些子服務各自部署在不同的執行個體或容器上,通過協同工作完成整體應用功能。採用基於路徑的智能路由機制,確保用戶端請求能夠被精確地分配至處理對應商務邏輯的服務執行個體。例如,在電商平台上,使用者的認證請求、訂單處理請求和支付請求,會依據HTTP請求中的URL路徑分別被智能路由到認證服務、訂單服務和支付服務的對應執行個體上處理。

  • 讀寫分離:在處理高並發和對資料一致性要求嚴格的情境下,如訂單處理服務,採用讀寫分離策略進一步最佳化服務效能與資料安全性。讀操作和寫操作分別由不同的資料庫執行個體或叢集處理。讀取操作被路由到讀資料庫,而寫入操作則定向到寫資料庫。

  • 多租戶應用:在多租戶應用的情境中,為了實現不同租戶間服務的隔離與個人化,需要為不同的租戶提供獨立的環境。例如,通過建立租戶專屬的子網域名稱來區分不同租戶的入口,同時結合路徑來進一步細化服務功能。這樣,不僅可以確保每個租戶的資料安全和隱私,還能讓每個租戶擁有定製化的使用者體驗和介面。

使用限制

  • 僅7層監聽HTTP或HTTPS支援配置轉寄策略。

  • 轉寄策略所指向的後端伺服器組僅支援虛擬伺服器組。

  • 一個HTTP或HTTPS監聽可添加的網域名稱和URL轉寄規則數量不超過40,具體請參考使用限制

情境樣本

某教育平台希望通過單一網域名稱提供多樣化的線上學習服務,包括視頻課程和線上題庫。視頻服務需要高頻寬和流ApsaraVideo for Media Processing能力,而題庫服務則需要計算密集和快速響應。最初,所有服務在一個伺服器組上部署,導致資源分派不均,在視頻高峰期影響題庫訪問速度,使用者體驗受損。尤其是在使用者訪問量激增時,伺服器負載過高,無法保證服務穩定運行。

在這種情境下,平台利用阿里雲CLB配置了相同網域名稱下不同URL路徑的流量轉寄策略。如下圖所示,/video/的請求轉寄至視頻伺服器組RS1,確保視頻服務獲得足夠的頻寬和處理能力。/exam/的請求轉寄至題程式庫伺服器組RS2,最佳化計算資源以快速響應查詢和提交操作。通過這種方式,實現了精準路由,確保每個子服務都能高效、獨立地運行。

前提條件

  • 您已在華東2(上海)地區建立了Virtual Private Cloud1,並分別在可用性區域E和可用性區域G建立了一個交換器VSW1和VSW2。

  • 您已分別在VSW1和VSW2建立了ECS01和ECS02執行個體,且ECS01和ECS02執行個體中部署了應用服務。注意安全性群組中需要放通應用服務所使用的連接埠號碼

    本文ECS01和ECS02部署測試應用樣本如下:

    ECS中測試服務部署命令參考樣本

    ECS01部署命令樣本

    yum install -y nginx
    systemctl start nginx.service
    mkdir /usr/share/nginx/html/video
    cd /usr/share/nginx/html/video
    echo "Hello World ! This is video service." > index.html

    ECS02部署命令樣本

    yum install -y nginx
    systemctl start nginx.service
    mkdir /usr/share/nginx/html/exam
    cd /usr/share/nginx/html/exam
    echo "Hello World ! This is exam service." > index.html
  • 您已通過建立和管理虛擬伺服器組為CLB執行個體建立了2個虛擬伺服器組RS1和RS2,並在RS1中添加伺服器ECS01,在RS2中添加伺服器ECS02。後端伺服器連接埠的設定與部署應用服務的連接埠保持一致,本文使用Nginx服務的預設連接埠號碼80

  • 您已為CLB執行個體配置了HTTP監聽或者HTTPS監聽

  • 您已經註冊阿里雲網域名稱並完成ICP備案

操作步驟

步驟一:配置轉寄策略

  1. 登入傳統型負載平衡CLB控制台

  2. 在頂部功能表列,選擇目標CLB執行個體所屬地區。

  3. 執行個體管理頁面,單擊目標執行個體ID連結。

  4. 監聽頁簽,找到目標監聽,然後在目標監聽操作列單擊配置轉寄策略

  5. 添加轉寄策略面板,根據以下資訊配置轉寄策略,配置完成後單擊添加轉寄策略

    image

    • 網域名稱:您已經註冊並完成備案的自有網域名稱。

    • URL:輸入請求路徑。

      CLB轉寄策略對請求路徑中的英文字母區分大小寫,例如 /video 與 /viDeo 為兩條獨立路徑,需分別配置轉寄策略。

    說明

    如果請求的URL路徑中包含特殊字元,您需要使用URL特殊字元轉義編碼。例如,配置的轉寄策略使用包含特殊字元“/#/”的URL路徑,那麼在訪問對應的服務時,需要使用特殊字元井號(#)的轉義編碼“%23”,即請求的URL路徑中必須是“/%23/”,這樣才能按設定的轉寄規則轉寄請求。

步驟二:配置健全狀態檢查

說明

HTTP健全狀態檢查預設由負載平衡系統向該伺服器應用配置的預設首頁發起HTTP請求。 如果您用來進行健全狀態檢查的頁面並不是應用伺服器的預設首頁,需要指定具體的檢查路徑。

  1. 執行個體管理頁面,找到目標CLB執行個體,然後單擊目標執行個體ID。

  2. 監聽頁簽,在監聽的操作列單擊配置轉寄策略

  3. 轉寄策略面板,轉寄策略列表下,找到目標轉寄規則,單擊編輯。若有多條轉寄規則需要配置可重複此操作。

    image

  4. 在編輯轉寄策略面板,開啟轉寄規則進階配置,配置健全狀態檢查路徑,此處可配置轉寄規則中的URL路徑,以URL為/video為例,需要完成如下配置。

    image

步驟三:設定網域名稱解析

說明
  • 對於非阿里雲註冊網域名稱,需先將網域名稱添加到雲解析控制台,才可以進行網域名稱解析設定。

  • 如果您的CLB執行個體為私網類型,需先為其綁定Elastic IP Address(EIP),隨後配置A記錄將網域名稱解析指向該EIP實現公網訪問。

  1. 在左側導覽列,選擇傳統型負載平衡CLB > 執行個體管理

  2. 執行個體管理頁面,選擇目標執行個體,並複製目標執行個體的服務地址

  3. 執行以下步驟添加A解析記錄。

    1. 登入網域名稱解析控制台

    2. 權威網域名稱解析頁面,找到目標網域名稱,在操作列單擊解析設定

    3. 解析設定頁面,單擊添加記錄

    4. 添加記錄面板配置以下資訊,其他參數可保持預設值或根據實際情況修改,完成後單擊確定

      配置

      說明

      記錄類型

      在下拉式清單中選擇A

      主機記錄

      您的網域名稱的首碼。

      說明

      建立網域名稱為根網域名稱時,主機記錄為@

      記錄值

      輸入欄位名對應的A地址,即您複製的CLB執行個體的服務地址。

步驟四:訪問測試

使用瀏覽器訪問http://<網域名稱>/<URL>/查看響應結果,驗證是否將請求路由到對應的伺服器組。

  1. 訪問視頻服務http://www.example.com/video/,查看請求是否路由到視頻服務虛擬伺服器組RS1。

    image

  2. 訪問題庫服務http://www.example.com/exam/,查看請求是否路由到題庫服務虛擬伺服器組RS2。

    image

相關問題

CLB同網域名稱不同路徑的轉寄策略是否支援路徑的重新導向?

不支援。CLB轉寄策略為流量的轉寄。如果您需要配置轉寄路徑重新導向可考慮使用應用型負載平衡ALB,具體可參考配置監聽轉寄規則

配置多重路徑轉寄後,健全狀態檢查狀態為什麼異常了?

負載平衡在執行健全狀態檢查時,不關注轉寄策略,而是按照監聽器上配置的健全狀態檢查路徑(預設使用根路徑)進行檢查。當您的後端服務需要根據不同的路徑來響應不同的請求時,如果健全狀態檢查仍然按照預設或不匹配的路徑進行,就可能導致健全狀態檢查失敗。您可以根據需要在監聽的轉寄規則中配置健全狀態檢查路徑。

佈建網域名轉寄策略後會產生什麼計費項目嗎?

佈建網域名轉寄策略本身不會產生計費項目,如果您的CLB執行個體為私網類型,綁定EIP變更為公網CLB執行個體,會產生公網網路費。具體計費可參考CLB計費概述

相關文檔