调用dubbo接口设置超时时间(基于 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值决定。 指定实例:addersses[实例地址列表] 。 要修改的超时时间 。结果验证
选择和超时配置相关的应用 ,触发该调用验证。
原文首于 Dubbo 官网:https://cn.dubbo.apache.org/zh/overview/tasks/traffic-management/timeout/
欢迎在 https://github.com/apache/dubbo 给 Dubbo Star 。
搜索关注官方微信公众号:Apache Dubbo ,了解更多业界最新动态 ,掌握大厂面试必备 Dubbo 技能创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!