前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >灰度发布

灰度发布

作者头像
wade
发布2020-04-24 10:06:07
1.4K0
发布2020-04-24 10:06:07
举报
文章被收录于专栏:coding个人笔记coding个人笔记

灰度发布,对于大厂来说是必不可少的,对于我这种从来没有灰度发布过的,并不是很清楚,估计也有很多人不知道这个东西。以前只是直到灰度发布,这次稍微了解一下。

灰度发布是指新版本或者新功能通过一定策略选取一些用户,让他们先使用,通过使用情况对功能、性能、稳定性等指标评估是否扩大范围直至全面发布。

灰度发布开始到结束期间的这一段时间,称为灰度期。

优点:

提前收集用户使用意见,提前优化、修复bug。

让用户参与产品测试,加强与用户互动,降低产品升级所影响的用户范围。

选取用户是很关键的一点,可以通过城市、年龄、id等一系列条件选取少部分用户,而资源则通过选取之后,判断是否是灰度用户,然后指定呈现新版本还是旧版本。

web前端灰度发布如果是服务端渲染,通过服务端判断是否是灰度用户直接返回对应的版本页面。如果是通过框架,那么就需要在一个html里面判断,然后分别使用打包后的两个不同资源。如果是原生html的项目,则所需要判断的会更多。

如果是客户端的灰度发布,应该是可以按照用户逐渐推送更新安装包。而服务端的灰度发布则会相应容易一些,毕竟是在后台实现。

现在有专门的灰度发布模式A/B测试,通过业务代码区分流量访问不同代码。但是区分流量是业务代码做的。通过少量用户到新版本,然后对新旧版本对比,这就是A/B测试。

nginx这块我不会,所以也不知道能不能实现两个分支nginx静态代理。理论上来说是没有问题。

其实针对大型的系统,还有蓝绿部署、滚动发布等,还有专门的测试云服务提供商。

灰度发布除了代码层面之外,对服务这块要求还是蛮大的,灰度发布不同于预发布,灰度发布是直接让线上用户参与,而一般预发布是发布到线上,由测试人员进行测试。

当然,会使用灰度发布的,一般来说都是千万级别用户的项目了,虽然很想使用灰度发布,但还是需要考虑实际场景,也希望以后能有机会使用灰度发布。

(完)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 coding个人笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档