系统灰度上线 AB测试
上线新版本代码一般都是通过灰度系统,灰度系统可以把流量划分成多份,一份走新版本代码,一份走老版本代码。
灰度系统支持设置流量的比例,比如可以把走新版本代码的流量设置为 5%,没啥问题再放到 10%,50%,最后放到 100% 全量。
灰度系统不止这一个用途,比如产品不确定某些改动是不是有效的,就要做 AB 实验,也就是要把流量分成两份,一份走 A 版本代码,一份走 B 版本代码。
基本演示:
使用nest示例创建两个项目,端口分别为3000、30001
- git clone https://github.com/nestjs/typescript-starter.git project
- cd project/ 并修改
app.service.ts
中为:Hello World 1! - npm install
- npm run start
- cd .. && cp -r project project2 同上,修改project2中的端口为3001并修改
app.service.ts
中为:Hello World 2!