本文介紹如何為任務指定標簽。

應用場景

主要應用在灰度、壓測等場景。同一個應用分組下的機器,部分機器可能要用于灰度或者壓測,任務實現類和線上其他機器不一致。任務調度時,機器為隨機分配,所以灰度任務被分配到正常機器時,可能無法找到實現類。

傳統解決方案

傳統解決方案下,往往會創建多個應用分組,例如為灰度機器專門配置一個Group ID。但這種解決方案具有以下局限性。

  • 正常的任務無法調度到灰度機器。灰度任務流量較小,專門創建用于處理灰度任務的機器會導致浪費資源。
  • 上線路徑復雜。灰度任務測試完成后,最后需要上線調度到所有線上機器中。但該任務已經配置在灰度分組中,因此需要在原來線上的分組再次重建任務,并將該灰度任務刪除。

指定標簽的解決方案

注冊SchedulerX客戶端時支持指定標簽。本文以Spring Boot接入為例,配置信息如下。更多信息,請參見Spring Boot應用接入SchedulerX

spring.schedulerx2.label=gray

步驟一:驗證標簽注冊成功。

  1. 登錄EDAS控制臺
  2. 在左側導航欄單擊任務調度
  3. 在頂部菜單欄選擇地域。
  4. 應用管理操作列,單擊查看實例。在連接實例頁面的標簽列驗證標簽是否注冊成功。

步驟二:指定任務運行在標簽為gray的機器上

  1. 登錄EDAS控制臺
  2. 在左側導航欄單擊任務調度
  3. 在頂部菜單欄選擇地域。
  4. 在左側導航欄選擇任務管理
  5. 任務管理操作列,單擊目標任務的1,然后單擊指定機器
  6. 指定機器頁面,選擇指定類型標簽,勾選對應的機器,單擊確定

灰度驗證通過后,所有機器都將上線新的任務實現類。可將指定標簽刪除,實現動態生效。