Skip to content

cailin186/dubbo-gray

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

在飞速发展的互联网公司,灰度其实就是根据设定的规则将请求路由到我们的灰度版本(灰度机器)上来。比如对于API来说,一般有如下几个需求:特定用户(比如测试帐号)、 特定的App(比如测试app或者合作App)、特定的模块、接口(只有某些接口需要灰度,这种一般是API Container的修改,拿一些不是很重要的API做灰度测试)、特定的机器(某些请求IP转发到灰度机)等。 在传统软件产品发布过程中(例如微软的Windows 7的发布过程中),一般都会经历Pre-Alpha、Alpha、Beta、Release candidate(RC)、RTM、General availability or General Acceptance (GA)等几个阶段(参考Software release life cycle)。可以看出传统软件的发布阶段是从公司内部->外部小范围测试>外部大范围测试->正式发布,涉及的用户数也是逐步放量的过程。

灰度可以解决的问题: 1、 在发布过程中降低上线风险 2、 降低影响范围,并且范围可控 3、 降低对测试的依赖,减少线下自测的数据构造成本 4、 特定的请求能够指向特定的服务器,方便集中监控日志,方便跟踪完整的调用链路 5、 方便系统流量切入 6、 方便回滚 7、 指定特定人群,方便系统回访,方便产品需求收集,完善产品功能,提升产品质量 8、 在无状态的情况下保障用户使用到的版本一致 9、 避免停服给用户带来坏的体验用

About

dubbo灰度发布系统

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published