全部產品
Search
文件中心

Microservices Engine:配置行為

更新時間:Dec 27, 2024

當監控的Web資源或RPC資源由於達到預設的流控閾值、觸發熔斷機制或者執行降級規則時,Fallback行為將被啟用以提供備選處理邏輯。對於Web資源,通常會配置一個備用控制器或處理器來返回友好的提示資訊,或者執行其他替代操作,而不是直接拋出異常或響應錯誤狀態代碼。而對於RPC資源,Fallback行為則表現為調用本地的回退方法代替遠程服務調用,防止因遠程服務不可用而導致整個調用鏈路中斷。

前提條件

新增行為

  1. 登入MSE治理中心控制台,並在頂部功能表列選擇地區。

  2. 在左側導覽列,選擇治理中心 > 应用治理

  3. 应用列表頁面,單擊目標應用的資源卡片,然後在左側導覽列單擊流量治理

  4. 流量治理頁面,單擊流量防护頁簽,然後單擊行为管理頁簽。

  5. 單擊新增行为,在新增行为對話方塊中選擇資源類型並完成對應配置,然後單擊新建

    Web資源

    參數

    描述

    樣本值

    行为名称

    該行為的名稱。長度不超過128個字元,同一個應用內名稱不能重複。

    測試行為

    针对的资源类型

    選擇為Web類型。

    Web

    Web 限流处理策略

    定義Web介面訪問觸發某種規則後的行為表現。自訂返回:需設定HTTP返回狀態代碼、返回內容的格式和返回的內容。表示Web介面訪問觸發規則後返回自訂的內容。

    自訂返回

    HTTP 返回状态码

    預設為429。當Web限流處理策略為自訂返回時,需要填寫。

    429

    返回 content-type

    設定返回內容的格式為普通文本JSON

    JSON字串

    HTTP 返回文本

    輸入當Web介面訪問觸發規則後返回的內容。當Web限流處理策略為自訂返回時,需要填寫。

    {"message": "blocked oops"}

    RPC資源

    參數

    描述

    樣本值

    行为名称

    該行為的名稱。長度不超過128個字元,同一個應用內名稱不能重複。

    測試行為

    针对的资源类型

    選擇為Rpc類型。

    說明

    Apache Dubbo2.7.0到2.7.3版本不支援自訂行為,這些版本限流返回的是java.lang.RuntimeException,內容包含SentinelBlockedException及限流資訊。

    Rpc

    Rpc 限流處理策略

    定義Rpc介面訪問觸發某種規則後的行為表現。

    • 自訂返回:自訂返回結果。需設定HTTP返回狀態代碼、返回內容的格式和返回的內容。表示Rpc介面訪問觸發規則後返回自訂的內容。

    • 自訂異常:拋出自訂異常。需設定異常的類名和異常文本,表示Rpc介面訪問觸發規則後系統會返回指定的異常資訊。

    自訂返回/自訂異常

    Rpc 限流處理策略自訂返回

    自訂返回類名

    填寫類名稱路徑。

    說明

    自訂返回目前不支援物件類型中包含未確定類型的泛型,如Map<K, V>、List<T>等。

    com.alibaba.demo.OrderService:getOrder(long)

    自訂返回內容(JSON 格式)

    填寫當Rpc介面訪問觸發規則時返回結果的對象內容。

    {"id": "123", "name": "test"}

    Rpc 限流處理策略自訂異常

    異常類名

    填寫異常類名稱路徑。

    java.lang.RuntimeException

    異常資訊文本

    填寫Rpc介面訪問觸發規則後拋出自訂異常的文本資訊。

    "Operation failed"

    新增的行為會顯示在行为管理頁面中。

修改或刪除行為

  1. 登入MSE治理中心控制台,並在頂部功能表列選擇地區。

  2. 在左側導覽列,選擇治理中心 > 应用治理

  3. 应用列表頁面,單擊目標應用的資源卡片,然後在左側導覽列單擊流量治理

  4. 流量治理頁面,單擊流量防护頁簽,然後單擊行为管理頁簽。

  5. 您可以單擊目標行為對應操作列下的修改删除,完成修改或刪除行為。

關聯線為

在配置各類控制規則時,都可以關聯對應的行為,本文以流控規則為例關聯目標行為。

  1. 登入MSE治理中心控制台,並在頂部功能表列選擇地區。

  2. 在左側導覽列,選擇治理中心 > 应用治理

  3. 应用列表頁面,單擊目標應用的資源卡片,然後在左側導覽列單擊流量治理

  4. 流量治理頁面,單擊流量防护頁簽,然後單擊接口流控頁簽。

  5. 接口流控頁簽下單擊新增流控规则

  6. 新增流控防護規則對話方塊中完成配置。完成选择防护场景配置防护规则後,在配置防護行為地區,完成下列設定。

    1. 选择防护场景步驟,選擇接口类型WEB服務RPC服務,然後選擇流量類型介面名稱防護類型

    2. 配置防护规则步驟,設定單機QPS閾值並選擇流控效果

    3. 配置防護行為步驟,選擇关联行为下拉式清單中的目標行為進行關聯,或單擊新增行为來建立新的行為進行關聯。

    說明
    • 如果您不需要自訂限流後的Fallback行為,則選擇預設行為即可,預設介面類型為空白。

    • 新增規則時,若當前介面已有綁定行為,後續若綁定新的行為則會覆蓋介面下已有行為。

    • 選擇Fallback行為時,若不選擇介面類型,則綁定預設行為;選擇介面類型並綁定相應類型行為後,行為類型不可修改,但行為可以修改。

    • 對於 Feign 架構其自身的 Fallback 機制生效,自訂行為不生效。

  7. 單擊新增