日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

文檔

為Spring Cloud服務配置標簽路由

更新時間:

標簽路由通過標簽將一個或多個服務的提供者劃分到同一個分組,從而約束流量只在指定分組中流轉,實現流量隔離的目的。標簽路由可以作為多版本開發測試、同應用的多版本流量隔離以及A/B Testing等場景的能力基礎。本文介紹如何為Spring Cloud服務配置標簽路由。

背景信息

標簽路由目前僅支持ECS集群中的應用。

應用場景

多版本開發測試

多個版本并行開發時,需要為每個版本準備一套開發環境。如果版本較多,開發環境成本會非常大。流量隔離方案可以在多版本開發測試時大幅度降低資源成本。

使用基于標簽路由的全鏈路流量隔離機制,可以將特定的流量路由到指定的開發環境。例如,在開發環境1中,為應用B(V1.1)和應用D(V1.1)創建Tag1標簽,并配置對應的路由規則。入口應用A調用B時,會判斷流量是否滿足路由規則。如果滿足,路由到開發環境1中應用B的V1.1版本;如果不滿足,路由到基線環境中的應用B的V1版本。應用C調用應用D時,同樣根據流量決定路由到應用D的V1版本或V1.1版本。

多版本開發測試

相同應用的多版本間流量隔離

如果一個應用有多個版本在線上同時運行,部署在不同環境中,例如日常環境和特殊環境。那么可以使用標簽路由對不同環境中的不同版本進行流量隔離,將秒殺訂單流量或不同渠道訂單流量路由到特殊環境,將正常的流量路由到日常環境。即使特殊環境異常,本應進入特殊環境的流量也不會進入日常環境,從而不會影響日常環境的使用。

相同應用的多版本間流量隔離

A/B Testing

線上有多個應用版本同時運行,期望對不同版本的應用進行A/B Testing。那么可以使用標簽路由的全鏈路流量控制功能,將地域A的客戶流量路由到V1版本,地域B的客戶流量路由到V1.1版本。通過對不同版本的驗證,達到降低新產品或新特性的發布風險,為產品創新提供保障的目的。

A/B Testing

操作流程

假設ECS集群中部署了應用A,該應用有一個默認分組,共包含3個應用實例。

標簽路由流程如下:

  1. 創建標簽

    1. 為應用A新建兩個分組:group1和group2。

    2. 將默認分組下的2個應用實例分別更換到分組group1和group2。

    3. 分別為group1和group2分組創建標簽路由中的標簽。

  2. 創建標簽路由規則:基于group1和group2的標簽分別創建標簽路由規則。

標簽路由創建完成后,當應用B調用應用A時,流量會根據規則被路由到group1和group2。其它不滿足group1和group2的路由規則的流量會被路由到默認分組。

創建標簽

在應用中新建分組,并為該分組添加實例,然后通過分組的JVM設置為該分組創建標簽。

  1. 登錄EDAS控制臺

  2. 為應用創建應用分組。具體操作,請參見創建分組

  3. 為新建分組添加實例,可以將默認分組中的實例更換到新建分組,也可以對新建分組進行擴容。具體操作,請參見添加實例

    重要

    從默認分組中更換到新建分組的應用實例需要重啟才能識別標簽。新建分組中擴容的實例無需重啟。

  4. 在新建分組右上角單擊分組設置,在列表中單擊JVM

    分組設置-JVM
  5. 分組設置對話框,單擊自定義。在展開的自定義區域,打開自定義開關,并在配置內容的文本框中設置分組標簽,然后單擊配置JVM參數

    分組標簽通過自定義參數設置,格式為-Dalicloud.service.tag=tag1,其中,tag1為標簽名稱,請根據實際業務需求設置。

    分組設置-JVM-自定義
  6. 重啟應用。

    • 方式一:在應用列表頁面,選中應用后,單擊批量重啟,在確認對話框,單擊確定

    • 方式二:在應用列表頁面,單擊應用名稱,在基本信息頁面右上角,單擊停止應用啟動應用

    說明

    自定義JVM參數需重啟應用才能生效。

創建標簽路由規則

標簽(即分組)創建完成后,需要分別基于不同標簽創建路由規則。

  1. 登錄EDAS控制臺

  2. 在左側導航欄,選擇流量管理 > 微服務治理 > Spring Cloud

  3. Spring Cloud左側導航欄,單擊標簽路由

  4. 標簽路由頁面,選擇微服務空間,然后單擊創建標簽路由

  5. 創建標簽路由面板設置參數,然后單擊確定

    創建標簽路由

    標簽路由參數說明:

    配置項

    說明

    微服務空間

    左側為地域列表,右側為微服務空間列表,根據實際情況選擇。

    路由名稱

    標簽路由規則名稱,例如label-routing-group1

    描述

    規則描述。

    應用

    在下拉列表中選擇應用。

    標簽

    在下拉列表中選擇標簽,即為應用新建分組設置的自定義JVM參數-Dalicloud.service.tag的值。

    選擇完成后,在下方應用實例區域會顯示該分組下的實例的IP。

    是否鏈路傳遞

    如果需要使用全鏈路流控,請打開是否鏈路傳遞開關。

    說明

    由于目前全鏈路流控處于灰度發布中,所以如需使用該功能,請加入釘釘交流群(群號:31723701),聯系EDAS技術支持人員。

    流量規則

    框架類型

    包含Spring CloudDubbo,根據應用實際框架選擇。

    • Spring Cloud:僅支持設置URL的Path,例如/getIp

    • Dubbo:支持選擇服務和接口。

    Path

    HTTP的相對路徑。

    條件模式

    包含同時滿足下列條件滿足下列任一條件,根據實際需求選擇。

    條件列表

    可以分別設置Parameter、Cookie、Header和Body Content四種類型的參數。例如:

    • Parameter:name=xiaoming

    • Cookie:hello = "world" 或 "world2"

結果驗證

本文僅通過一個示例介紹如何為應用創建標簽路由,您可以為應用參照配置,然后根據實際業務需求進行驗證。

  • 默認100%流量會按照規則,調用到tag1節點。

    image..png
  • 匹配規則的流量,會調用到對應標簽的節點。

    image..png