qq_38834316 2020-10-29 17:31 采纳率: 60%
浏览 313

请问如何代码实现灰度发布

灰度发布一般使用物理方式实现:A/B环境、蓝绿部署、金丝雀灰度等。
这些方案非常不错,但是有个缺点是:物理(money)成本高。

所以想请教下,有没有比较好的代码灰度实现;
这种方式必然会增加一些编码工作量,但节省了物理成本,所以想借鉴下。
主要是可行性、成本以及带来的问题。

当前已有功能有:
1、区域配置服务。可以用来灰度配置区域

目前我认为有两种方案:
A:仅支持灰度,也就是true/false(满足需求)
B:支持多版本(非常优秀)

我的思路是:
在每个应用的代码中,同时存在两个(多个)版本的代码;
通过读取灰度配置判断使用哪个版本;
编码时,老版本代码永远不做修改,当需要迭代时,先复制代码,创建新版本,在新版本上修改。通过灰度配置来判断使用哪个版本代码。定期清理老的不用版本的代码

目前遇到的困惑有:
1、多版本代码共存的管理、后期的清理工作
2、更好的实现方式,最好有demo
3、对这种架构的良好编码规范

  • 写回答

1条回答 默认 最新

  • gzwxhcn 2021-04-12 15:49
    关注

    可以参考一下这个,再做思路的分析
    http://nepxion.gitee.io/discovery

    评论

报告相同问题?

悬赏问题

  • ¥15 fx2n系列plc的自控成型机模拟
  • ¥15 时间序列LSTM模型归回预测代码问题
  • ¥50 使用CUDA如何高效的做并行化处理,是否可以多个分段同时进行匹配计算处理?目前数据传输速度有些慢,如何提高速度,使用gdrcopy是否可行?请给出具体意见。
  • ¥15 基于STM32,电机驱动模块为L298N,四路运放电磁传感器,三轮智能小车电磁组电磁循迹(两个电机,一个万向轮),如何通过环岛的原理及完整代码
  • ¥20 机器学习或深度学习问题?困扰了我一个世纪,晚来天欲雪,能饮一杯无?
  • ¥15 c语言数据结构高铁订票系统
  • ¥15 关于wkernell.PDB加载的问题,如何解决?(语言-c#|开发工具-vscode)
  • ¥100 某宝多次访问被拒绝,求解
  • ¥15 (标签-STM32|关键词-智能小车)
  • ¥20 关于#stm32#的问题,请各位专家解答!