首页 > 其他分享 >基于 Dubbo Admin 实现同机房/区域优先

基于 Dubbo Admin 实现同机房/区域优先

时间:2022-12-28 20:34:49浏览次数:64  
标签:Dubbo 优先 区域 Admin 配置 机房 路由

Dubbo提供动态配置同机房/区域优先的服务治理能力,可以在无需重启应用的情况下,动态配置同机房/区域优先。

Dubbo可以通过XML配置,注解配置,动态配置同机房/区域优先,这里主要介绍动态配置的方式,其他配置方式请参考旧文档配置

开始之前

请确保成功运行Dubbo-Admin

背景信息

当应用部署在多个不同机房/区域的时候,应用之间相互调用会出现跨区域的情况,跨区域调用会增加响应时间。同机房/区域优先是指应用调用服务时,优先调用同机房/区域的服务提供者。Dubbo-Admin提供了动态的同机房/区域优先能力,能够帮助您快速动态配置同机房/区域优先,避免了跨区域带来的网络延时,从而减少了调用的响应时间。

操作步骤

标签路由

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

规则详解

配置模板
---
  force: false
  runtime: true
  enabled: true
  key: governance-tagrouter-provider
  tags:
    - name: tag1
      addresses: ["127.0.0.1:20880"]
    - name: tag2
      addresses: ["127.0.0.1:20881"]
 ...

对于同机房/区域优先场景,只需要理清楚以下问题基本就知道配置该怎么写了:

  1. 要修改服务所属提供者应用的配置。
    • 应用:scope: application, key: app-name(还可使用services指定某几个服务)。
  2. 当路由结果为空,是否强制返回。
    • force=false: 当路由结果为空,降级请求tag为空的提供者。
    • force=true: 当路由结果为空,直接返回异常。
  3. 路由规则的优先级
    • priority=1: 路由规则的优先级,用于排序,优先级越大越靠前执行,可不填,缺省为 0。
  4. 配置是否只对某几个特定实例生效。
    • 所有实例:addresses: ["0.0.0.0"] addresses: ["0.0.0.0:*"] 具体由side值决定。
    • 指定实例:addersses[实例地址列表]
  5. 要修改的标签名。

结果验证

选择和同机房/区域优先配置相关的应用,触发该调用验证。

原文首于 Dubbo 官网:https://cn.dubbo.apache.org/zh/overview/tasks/traffic-management/zone/
欢迎在 https://github.com/apache/dubbo 给 Dubbo Star。
搜索关注官方微信公众号:Apache Dubbo,了解更多业界最新动态,掌握大厂面试必备 Dubbo 技能

标签:Dubbo,优先,区域,Admin,配置,机房,路由
From: https://www.cnblogs.com/apache-dubbo/p/17011216.html

相关文章

  • 单位机房日常维护管理
    ​  经历了半年断断续续的开发,终于将一个“机房报修管理系统”的开发完善了。由于博主在校期间有幸担任了两年的机房管理员,负责学校实训室电脑设备的维修,我在担任此职务......
  • What's new in dubbo-go-pixiu 0.5.1
    dubbo-go-pixiuv0.5.1(链接​​https://github.com/apache/dubbo-go-pixiu/releases/tag/v0.5.1-rc2​​)经过apache发版投票流程今天正式发版,在此感谢关注dubbo-go-p......
  • el-admin框架简单解析
    el-admin框架简单解析​​el-admin简单了解​​​​使用框架的四大步​​​​前端文件架构​​​​el-admin前端部分解析​​​​前端Vue目录结构​​​​Layout布局​​......
  • Navicat 连接Oracle ORA-28547: connection to server failed, probable Oracle Net a
    Navicat连接Oracle报ORA-03135:connectionlostcontactORA-28547:connectiontoserverfailed,probableOracleNetadminerroroci.dll版本太低,需要重新下载......
  • osnadmin: error: unknown long flag ‘--channelID‘
    在建立通道的时候​​./network.shupcreateChannel​​报错,报错信息为:osnadmin:error:unknownlongflag'--channelID',try--helpChannelcreationfailed错误截图:......
  • 从零演示如何基于 IDL 方式来定义 Dubbo 服务并使用 Triple 协议
    使用IDL定义服务具有更好的跨语言友好性,然而Triple协议并不是和IDL强绑定的,也可以使用JavaInterface+Pojo的方式定义服务并启用Triple协议,具体可参见示例。更......
  • 阿里云解释史上最长大规模中断:机房湿了
    我是卢松松,点点上面的头像,欢迎关注我哦!据DNSAdmin爆料:阿里云解释了12月18日史上最长大规模中断(15.5小时)的4大问题。12月25日,阿里云官方发布说明,详细解释了此次中断故障的......
  • 从零演示如何基于 IDL 方式来定义 Dubbo 服务并使用 Triple 协议
    使用IDL定义服务具有更好的跨语言友好性,然而Triple协议并不是和IDL强绑定的,也可以使用JavaInterface+Pojo的方式定义服务并启用Triple协议,具体可参见示例。......
  • What's new in dubbo-go v3.0.4
    dubbogo社区发布了 ​​v3.0.4​​ ​​https://github.com/apache/dubbo-go/releases/tag/v3.0.4-rc1,本文列出相关重大​​feature、bugfix、性能提升项。1对接Pol......
  • 在Dubbo-go中使用TLS加密进行安全通信
    1背景Dubbo-go在Getty/Triple/Grpc三个通信层面支持TLS链路安全通信。2原理2.1证书机制:ps:可以先提前了解非对称加密机制。CA(CertificationAuthority)负责生成根证书......