临时踢除问题服务实例

在 Dubbo-Admin 临时踢除问题服务实例

Dubbo提供临时踢除问题服务实例的服务治理能力,可以在无需重启应用的情况下,临时踢除问题服务实例。

Dubbo可以通过XML配置,注解配置,动态配置实现临时踢除问题服务实例,这里主要介绍动态配置的方式,其他配置方式请参考旧文档配置

开始之前

请确保成功运行Dubbo-Admin

背景信息

服务在线上运行的过程中,难免遇到某些节点有问题,为了不影响整体服务的正常运行,需要临时下线问题的服务实例。Dubbo-Admin提供了临时踢除问题服务实例能力,能够帮助您临时下线问题服务实例,不影响整体服务的运行。

操作步骤

动态配置

  1. 登录Dubbo-Admin控制台
  2. 在左侧导航栏选择服务治理 > 动态配置。
  3. 点击创建按钮,在创建动态配置面板中,填写规则内容,然后单击保存。

规则详解

配置模板
  1. ---
  2. configVersion: v2.7
  3. scope: application/service
  4. key: app-name/group+service+version
  5. enabled: true
  6. configs:
  7. - addresses: ["0.0.0.0"]
  8. providerAddresses: ["1.1.1.1:20880", "2.2.2.2:20881"]
  9. side: consumer
  10. applications/services: []
  11. parameters:
  12. timeout: 1000
  13. loadbalance: random
  14. - addresses: ["0.0.0.0:20880"]
  15. side: provider
  16. applications/services: []
  17. parameters:
  18. threadpool: fixed
  19. threads: 200
  20. iothreads: 4
  21. dispatcher: all
  22. weight: 200
  23. ...

对于临时踢除问题服务实例场景,只需要理清楚以下问题基本就知道配置该怎么写了:

  1. 要修改整个应用的配置还是某个服务的配置。
    • 应用:scope: application, key: app-name(还可使用services指定某几个服务)。
    • 服务:scope: service, key:group+service+version
  2. 修改是作用到提供者端。
    • 提供者:side: provider
  3. 配置是否只对某几个特定实例生效。
    • 所有实例:addresses: ["0.0.0.0"]addresses: ["0.0.0.0:*"] 具体由side值决定。
    • 指定实例:addersses[实例地址列表]
  4. 要修改的disabled参数。

结果验证

选择和临时踢除问题服务实例配置相关的应用,触发该调用验证。

最后修改 December 16, 2022: Fix check (#1736) (97972c1)