Kevin's blog Kevin's blog
首页
  • AI基础
  • RAG技术
  • 提示词工程
  • Wireshark抓包
  • 常见问题
  • 数据库
  • 代码技巧
  • 浏览器
  • 手册教程
  • 技术应用
  • 流程规范
  • github技巧
  • git笔记
  • vpn笔记
  • 知识概念
  • 学习笔记
  • 环境搭建
  • linux&运维
  • 微服务
  • 经验技巧
  • 实用手册
  • arthas常用
  • spring应用
  • javaAgent技术
  • 网站
友情链接
  • 分类
  • 标签
  • 归档

Kevin

你可以迷茫,但不可以虚度
首页
  • AI基础
  • RAG技术
  • 提示词工程
  • Wireshark抓包
  • 常见问题
  • 数据库
  • 代码技巧
  • 浏览器
  • 手册教程
  • 技术应用
  • 流程规范
  • github技巧
  • git笔记
  • vpn笔记
  • 知识概念
  • 学习笔记
  • 环境搭建
  • linux&运维
  • 微服务
  • 经验技巧
  • 实用手册
  • arthas常用
  • spring应用
  • javaAgent技术
  • 网站
友情链接
  • 分类
  • 标签
  • 归档
  • 微服务架构筑基础
  • Feign支持BasicAuth验证
  • Feign与OpenFeign
  • Feign请求压缩与超时等配置
  • OAUTH2.0协议
  • 分布式配置中心-apollo

  • alibaba-nacos

    • nacos介绍与单机部署
    • nacos集群部署方式(linux)
    • nacos服务注册与发现
    • nacos注册中心详解
    • nacos客户端配置加载
    • nacos客户端配置刷新
    • nacos服务配置隔离与共享
    • nacos配置Beta发布
      • 一、灰度发布简介
      • 二、nacos与灰度发布
      • 三、在nacos配置中心实现Beta发布
        • 3.1.实验场景
        • 3.2.配置实现步骤
      • 四、Beta配置的测试
      • 五、Beta配置回退与全量发布
  • 微服务
  • alibaba-nacos
kevin
2022-06-11
目录

nacos配置Beta发布

# 一、灰度发布简介

灰度发布的概念我们在apollo及spring cloud config章节都已经介绍过。对于概念模糊的朋友再把下面的这段话看一遍,高手略过。 灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题。

灰度发布就是让配置先在部分实例生效,如果效果理想全量发布到所有实例,如果效果不理想就可以放弃当前的“灰度发布配置”。

# 二、nacos与灰度发布

在nacos配置管理里面,与灰度发布有相同效果的发布方式被称为beta发布。其实二者的核心内涵并没有什么实质上的差别,下文取自百度百科:

img

beta发布就是发布一个公测版本,公测结果较好,就全量发布。公测结果不理想,就放弃Beta发布的版本。

# 三、在nacos配置中心实现Beta发布

# 3.1.实验场景

aservice-rbac服务在192.168.161.3,192.168.161.4,192.168.161.5启动了三个实例。我们想把其中192.168.161.3,192.168.161.4实例的配置项"user.init.password"的值改为xxxxyyyy(即:Beta发布),192.168.161.5的配置不做更改。

# 3.2.配置实现步骤

  • 在配置列表页面,选择要进行配置变更灰度发布的配置文件进行"编辑"修改

    img

  • 在配置编辑界面,修改配置项"user.init.password"的值改为xxxxyyyy。并勾选Beta发布,填写需要Beta发布的微服务实例运行的主机的ip,多个ip用逗号分隔。

    img

  • 点击“发布beta”按钮们进行配置发布

    img

  • beta配置发布之后,正常情况下,192.168.161.3,192.168.161.4上运行的实例的配置项会立刻动态刷新。

  • 配置编辑界面分Tab展示,一个Tab是正式版的配置,也就是192.168.161.5实例正采用的配置。一个Tab是Beta版的配置,也就是192.168.161.3,192.168.161.4实例动态刷新之后的配置。

    img

# 四、Beta配置的测试

因为这种测试方法我们之前的章节已经多次用过,这里就不截图详细说明了,测试方法如下:

  • 用postman发送请求到192.168.161.3,192.168.161.4的“/sysuser/pwd/reset”接口,在SysuserService的defaultPassword的默认密码值是xxxxyyyy
  • 用postman发送请求到192.168.161.5的“/sysuser/pwd/reset”接口,在SysuserService的defaultPassword的默认密码值是Abcd234

出现以上结果,证明我们的Beta发布结果是正确的。测试代码位置及下断点的位置可以参考:《nacos客户端配置刷新》

# 五、Beta配置回退与全量发布

beta发布的配置可以进行回退,也可以全量发布

img

  • 点击“停止beta”,192.168.161.3,192.168.161.4的配置就回退到正式版的配置。
  • 点击“发布”实际就是全量发布,将Beta配置在所有微服务实例(包括192.168.161.5)上生效。当前的“BETA配置”转成新的“正式版”配置。
上次更新: 2022/06/13, 18:30:58
nacos服务配置隔离与共享

← nacos服务配置隔离与共享

最近更新
01
AI是如何学习的
06-06
02
提示词工程实践指南
06-06
03
chatGpt提示原则
06-06
更多文章>
| Copyright © 2022-2025 Kevin | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式