面向對象 1.面向對象簡介 類(Class): 用來描述具有相同的屬性和方法的對象的集合。它定義了該集合中每個對象所共有的屬性和方法。對象是類的實例。 方法:類中定義的函數。 類變數:類變數在整個實例化的對象中是公用的。類變數定義在類中且在函數體之外。類變數通常不作為實例變數使用。 數據成員:類變數 ...
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值決定。 - 指定實例:
addersses[實例地址列表]
。
- 所有實例:
- 要修改的超時時間。
結果驗證
選擇和超時配置相關的應用,觸發該調用驗證。
原文首於 Dubbo 官網:https://cn.dubbo.apache.org/zh/overview/tasks/traffic-management/timeout/
歡迎在 https://github.com/apache/dubbo 給 Dubbo Star。
搜索關註官方微信公眾號:Apache Dubbo,瞭解更多業界最新動態,掌握大廠面試必備 Dubbo 技能