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

如何通過標簽路由做任務灰度

更新時間:

您可以使用標簽路由的方式實現任務的灰度調度,通過指定標簽來指定每個任務調度到哪個label的Executor上。本文將介紹標簽路由的架構原理、任務灰度的最佳實踐和標簽路由配置步驟詳情。

基于標簽路由的架構原理

任務調度XXL-JOB版支持基于label的路由策略,在Executor向Server心跳匯報時,可以附加當前Executor的label信息,每個任務通過指定標簽來配置標簽路由,指定每個任務調度到哪個label的Executor上。

image

任務灰度最佳實踐

如何做任務灰度

比如我們想灰度userId=2xx開頭的數據,我們可以復制一個任務,比如一個叫jobA-base,一個叫jobA-gray。分別給兩個任務配置任務參數,jobA-base的任務參數是userId=-2xx,jobA-gray的任務參數是userId=2xx。jobA-gray執行任務的時候,拿到任務參數,只會去處理userId=2xx開頭的數據,jobA-base執行任務的時候去處理userId不等于2xx開頭的數據。

如何進行全鏈路灰度

通過標簽路由可以做到單跳灰度,即可以把灰度任務調度到label=gray的機器上,如果該任務還需要調用下游的微服務或消息等服務,并且也希望調用灰度的節點,則可以使用MSE微服務治理把所有服務加入到灰度泳道里,會自動進行全鏈路的灰度,如下圖所示

image

標簽路由配置步驟

步驟一:用戶側節點如何配置label

通過SDK插件增強(需要修改代碼)

  1. 在pom文件中添加以下依賴,并將其置于xxl-job-core之上,具體版本號詳情,請參見插件版本說明

    <dependency>
      <groupId>com.aliyun.schedulerx</groupId>
      <artifactId>schedulerx3-plugin-xxljob</artifactId>
      <version>${最新版本號}</version>
    </dependency>
  2. 應用程序啟動時,添加jvm參數-Dxxl.job.executor.label來設置標簽。例如:通過如下示例命令啟動配置標簽。

    java -Dxxl.job.admin.addresses=http://xxljob-xxxx -Dxxl.job.executor.appname=app1 -Dxxl.job.accessToken=xxx -Dxxl.job.executor.label=gray app.jar

通過MSE服務治理Agent增強(不需要修改代碼)

敬請期待

步驟二:驗證接入成功

在左側導航欄的應用管理頁面,查看執行器數量,可以看到接入的機器的標簽,代表接入成功。

image

步驟三:配置標簽路由

在左側導航欄的任務管理頁面,單擊目標任務操作列下更多 > 指定機器,指定類型選擇標簽,則該任務只會運行在指定的標簽上。

image