Dubbo提供动态调整超时时间的服务治理能力,可以在无需重启应用的情况下,动态调整服务超时时间。
Dubbo可以通过XML配置,注解配置,动态配置实现动态调整超时时间,这里主要介绍动态配置的方式,其他配置方式请参考旧文档配置
请确保成功运行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。