临时踢出问题服务实例
在 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: provider
。
- 提供者:
- 配置是否只对某些特定实例生效。
- 所有实例:
addresses: ["0.0.0.0"]
或addresses: ["0.0.0.0:*"]
取决于 side 值。 - 指定实例:
addersses[实例地址列表]
。
- 所有实例:
- 要修改的禁用参数。
结果验证
选择与临时移除问题服务实例配置相关的应用程序,以触发调用验证。
上次修改时间:2023 年 2 月 9 日:Update docsy to 0.6.0 (#2141) (20081578326)