当前位置: 首页 > 知识库问答 >
问题:

dubbo怎么基于version做灰度发布?

郝池暝
2023-07-25

有没有大佬能系统性的讲一下。

我的关注点:

  • 服务的provider、consumer里的version该怎么配置?
  • 上线顺序有什么讲究?
  • 权重要不要考虑?
  • 怎么做新版本的代码稳定性的监控
  • 业务稳定后,旧版本的代码实现该如何管理?
  • 什么样的场景下,不适合灰度发布?

共有1个答案

贝成业
2023-07-25

version配置:

<!-- provider --><service interface="com.example.DemoService" version="1.0.0" ref="demoService" /><!-- consumer --><reference id="demoService" interface="com.example.DemoService" version="1.0.0" />

对于上线顺序讲究:
先部署新版本的服务提供者,然后再部署指定了新版本号的服务消费者。这样可以保证服务消费者启动时候,对应的服务提供者已经可用。

对于权重:
在灰度发布里,权重一般用来控制流量的分配。你可以设置权重来控制新旧版本服务的流量比例。比如,你可以把新版本的权重设置为 10%,旧版本的权重设置为 90%。这样,大部分的流量还会走旧版本,只有一小部分流量会走新版本。

对于新版本的代码稳定性的监控:
你可以用各种监控工具来监控服务的运行情况,比如 Prometheus、Grafana 等这些工具。如果新版本的服务有问题,你可以立马切换回旧版本。

对于业务稳定后,旧版本的代码实现该如何管理:
当新版本的服务稳定运行一段时间后,你可以逐步下线旧版本的服务。你可以先停止旧版本的服务提供者,然后再删除旧版本的服务消费者。在代码管理方面,你直接用 Git来管理不同版本的代码。

对于什么样的场景下,不适合灰度发布:
服务没有明确的版本管理,或者服务之间的依赖关系非常复杂

 类似资料:
  • 对于灰度发布,这里主要讲解如何实现,我所在的公司虽然使用这个逻辑实现的. 但是由于掺杂了太多业务相关东西,比如抓包,限流,缓存,校验,sso,云化,监控告警,成为了一个运维平台. 造成无法开源,真是好可惜.做这个系统多年还是想让大家来找找茬刷刷存在感的 我想当前没有一个开源的可能也和这个原因有关,太多功能和业务相关难以抽离成纯粹组件开源. 下面先讲主要逻辑结构,请看下图 这里需要讲解下这里面几个名

  • 本文向大家介绍Dubbo能做什么?相关面试题,主要包含被问及Dubbo能做什么?时的应答技巧和注意事项,需要的朋友参考一下 透明化的远程方法调用,就像调用本地方法一样调用远程方法,只需简单配置,没有任何API侵入。 软负载均衡及容错机制,可在内网替代F5等硬件负载均衡器,降低成本,减少单点。 服务自动注册与发现,不再需要写死服务提供方地址,注册中心基于接口名查询服务提供者的IP地址,并且能够平滑添

  • 从1.14.0开始支持预发布、灰度发布,可登陆SOP-Admin,然后选择服务列表进行操作。 使用预发布 SOP中预发布的思路如下: 假设网关工程sop-gateway在阿里云负载均衡有两台服务器,域名分别为: 域名 说明 open1.domain.com 网关服务器1 openpre.domain.com 网关服务器2,作为预发布请求入口 SLB对外域名为:open.domain.com,即开放

  • 我正在尝试从谷歌眼镜流音频和视频到浏览器。broswer只需要接收视频和音频。 我按照下面的说明编译了google源代码http://www.webrtc.org/native-code/android。 到目前为止,它起作用了。但我对录像有意见。它是以灰度显示的,我不确定为了修复这个问题,我应该对源代码做哪些更改。 null 非常感谢您能提供的任何帮助!

  • 本文向大家介绍Dubbo telnet 命令能做什么?相关面试题,主要包含被问及Dubbo telnet 命令能做什么?时的应答技巧和注意事项,需要的朋友参考一下 dubbo 通过 telnet 命令来进行服务治理,具体使用看这篇文章《dubbo服务调试管理实用命令》。 telnet localhost 8090

  • 1. 功能介绍 你可以点击 这里 查看灰度发布功能的介绍信息。 2. 常见问题 2.1 设置方案生效方式后,为什么无法编辑发布规则? 在设置了方案生效方式后,【发布规则】中的添加按钮将无法使用,如下图所示。此时,开发者将无法: 删除已经导入的用户列表 删除已经选择的其他规则 添加新的其他规则 此时,如需更改规则,则需要删除已经配置好的【发布规则】,此时就可以继续编辑发布规则。 2.2 范围内/范围