動態調整服務超時
在 Dubbo-Admin 中動態調整服務超時
Dubbo 提供了動態調整超時時間的服務治理能力,無需重新啟動應用即可動態調整服務超時時間。
Dubbo 可以透過 XML 配置、註解配置和動態配置來動態調整超時時間。這裡我們主要介紹動態配置方法,其他配置方法請參考舊文件 配置
開始之前
請確保已成功執行 Dubbo-Admin
背景資訊
在日常工作中會遇到各種超時配置,業務邏輯變更後,既有的呼叫關係可能需要隨著業務的發展不斷調整,相應服務介面的回應時間也可能要到上線後才能確定。Dubbo-Admin 提供了動態超時配置能力,可以幫助您快速動態地調整介面超時時間,提高服務可用性。
步驟
動態配置
- 登入 Dubbo-Admin 控制台
- 在左側導航窗格中,選擇「服務治理」>「動態配置」。
- 點擊「新增」按鈕,在新增動態配置面板中填寫規則內容,點擊「儲存」。
詳細規則
配置範本
---
configVersion: v2.7
scope: application/service
key: app-name/group+service+version
enabled: true
configs:
- addresses: ["0.0.0.0"]
providerAddresses: ["1.1.1.1:20880", "2.2.2.2:20881"]
side: consumer
applications/services: []
parameters:
timeout: 1000
loadbalance: random
- addresses: ["0.0.0.0:20880"]
side: provider
applications/services: []
parameters:
threadpool: fixed
threads: 200
iothreads: 4
dispatcher: all
weight: 200
...
針對動態調整超時時間的場景,您只需要明確以下幾個問題,即可知道如何編寫配置
- 您是要修改整個應用程式的配置,還是要修改某個服務的配置?
- 應用程式:
scope: application, key: app-name
(您也可以使用services
指定某些服務)。 - 服務:
scope: service, key:group+service+version
。
- 應用程式:
- 修改是應用於消費者端還是提供者端?
- 消費者:
side: consumer
,當作用於消費者端時,您可以進一步使用providerAddress
、applications
來選擇特定的提供者實例或應用程式,如果您同時配置了消費者和提供者,則消費者將覆蓋提供者。 - 提供者:
side: provider
。
- 消費者:
- 配置是否僅對某些特定實例生效?
- 所有執行個體:
addresses: ["0.0.0.0"]
或addresses: ["0.0.0.0:*"]
,取決於 side 值。 - 指定執行個體:
addresses[執行個體位址清單]
。
- 所有執行個體:
- 要修改的逾時時間。
結果驗證
選擇與逾時設定相關的應用程式以觸發呼叫驗證。
上次修改日期:2023 年 2 月 9 日:更新 docsy 至 0.6.0 (#2141) (20081578326)