灰度测试
2023-02-13 11:47:11 6 举报
灰度测试
作者其他创作
大纲/内容
一键复制灰度活动配置到正式活动
5.任务判定是否成功(包括同步或异步)
前端人员
back-web工作台
聖誕跨年積分賀卡
1.获取任务列表
发布
提交测试代码到灰度环境
编辑黑名单
存入唯一索引
调用服务
测试代码是否正确
方案五:清除用户数据方案使用场景:正式活动上线之前,代码更新至正式环境,运营人员把配置配置好,测试人员在新活动进行测试,测试完成后,运营人员可以把测试用户数据删档。
生成唯一码:生成规则为 活动id+任务id+三位随机码
校验新配置是否合理正确
日志管理
micro-snowflaker用户id生成项目
正式域
活动id
标准化业务接口请求
mylink接口或其他活动项目
灰度活动
暴露正式链接入口
4,添加单个活动配置
调用接口存储日志
活动服务器
运营人员
mylink-common
返回结果
正确代码
数据库:mylink-admin
方案二:灰度代码方案配置相同,代码不同代码:【灰度代码】【正式代码】,配置:【正式配置】使用场景:正式配置已上线,或已配置好,中途代码需要更新
调用
方案四:正式代码灰度配置方案使用场景:此为现行灰度环境方案之一,正式环境中,活动正式上线之前,新建一个灰度活动,进行测试,灰度活动测试好后,按照灰度活动的配置,手动配置同灰度活动相同的配置到正式配置。优化点是灰度活动的配置到正式活动的配置可以添加复制操作,避免手动重新编辑出错
正式用户
编辑域
复制新配置到正式环境
mylink接口
2.返回有效任务列表(如果传参用户信息,返回用户完成任务状态)
灰度环境
项目地址:http://gitlab.via.cool/mylink/mylink-commodity-admin.git
micro-mylink-service mylink接口对接项目
用户token请求登录
将新配置存入编辑域
正式用户访问
通用任务赚积分
前端
测试配置是否正确
服务提供者
任务中心服务器
发现
提交新代码到正式环境
提供唯一不重复新用户id
阿里云负载均衡
红包雨抢圣诞礼物
根据主键存入用户信息,和抽奖码对应
管理员页面
任务中心
正式环境
开发人员
mysql数据库
提供相应微服务
mysql
测试并产生测试用户数据
活动项目
添加日志dubbo接口
提交新代码
方案三:灰度代码灰度配置方案此为现行灰度环境方案,但测试配置到灰度配置,灰度配置到正式配置,都是运营人员手动重新编辑,此方案优化点是配置直接一键复制,避免手动配置造成的测试的配置和实际线上的配置不一致的问题。
mylink服务器
DIY我的聖誕派對
集成公共模块,复用率高的服务。包括mylink全部接口调用、任务中心、日志查询、黑名单管理等。
读取数据
编辑
复制正式配置到灰度环境
3.开始任务或完成任务
绑定完成
存储日志
问题1:对新配置的不信任问题2:对新代码的不信任问题3:隔离新配置对正式配置的影响问题4:新配置向正式配置的转化问题5:新配置向原有正式配置的回滚问题6:隔离新代码对正式代码的影响问题7:新代码向正式代码的转化问题8:新代码向原有代码的回滚现有问题: 1,配置分布分散,redis和mysql都有,前端和后端都有,需要时间梳理,实现配置的来回切换;2,前端新配置和新代码同时发布,配置和代码连带更新;3,前端代码未活动隔离,是否存在活动的专属代码(活动页面),不同活动的专属代码未隔离,造成活动间的连带更新;4,运营数据多且杂,运营人员容易出错,利用流程设计避免此类错误。对新配置的不信任:1)新需求的新逻辑;2)运营人员的配置错误;3)配置信息测试环境、灰度环境正确,正式环境不正确。方案一:现有的预览模式代码相同,配置不同代码:【正式代码】 ;配置:【新配置】【正式配置】
解决问题:问题1、问题3、问题4
管理页面地址:http://cdn.via.cool/t01/web/atv/mylink/admin-pro/eI3rutej/index.html#/
2,发布页面接口发布单个活动新代码新页面
back-activity移动端
dubbo-admin地址:http://112.74.182.164:4008/
redis
服务消费者
只暴露链接至测试人员
mylink-base
工作台(若干环境)
mylink接口返回值
micro-login用户登录项目
返回jwt
预览页面读取编辑域信息,显示新配置效果
创建项目
添加配置信息
1,打包活动新代码新页面,或新公共代码
微服务服务器
项目地址:http://gitlab.via.cool/mylink/mylink-base.git
用户移动端h5页面
jar包上传地址:http://112.74.182.164:3002/nexus/content/repositories/snapshots/
提供系统时间和任务中心接口
是否在黑名单
一键清除测试用户数据
oss服务器
4.根据任务类型判断任务立即完成或需要进一步判定
微服务项目
服务名称:mylink-commodity-admin
8.返回完成结果
测试人员
重复,存入失败
解决问题:问题2,问题6,问题7
聖誕400萬用戶大抽獎
方案六:针对前端代码和配置连带部署,活动之间连带发布调整方案使用场景:现行工作台活动发布功能,涉及前端代码的发布和部分活动配置的发布,为避免前端代码和活动配置的连带部署,可以将现行发布接口拆分为前端代码发布接口和活动配置发布接口,这样前端代码和活动配置互不影响,可以精确操作。使用场景:如果前端代码分为活动专属代码(活动页面)和公共代码,可以将活动专属代码拆分出来发布,发布单活动代码只影响单活动,不影响其他活动。
存入成功,返回主键id
mylink接口对接
被引入
注册
管理页面项目对应活动
jar路径:com.via:mylink-base:1.0.7.8-SNAPSHOT
黑名单管理
复制部分代码,包括接口名称等信息
复制测试配置到灰度环境
5,发布配置接口发布单个活动配置
6,单个活动配置发布成功
保存业务数据
查询日志
正式环境正式活动
创建活动,生成活动id
移动端(若干环境)
redis数据库
ADMIN_ACTIVITY_ID配置项
維港AR賞煙花
租户管理员工作台页面
测试环境
正确效果
mysql and redis
服务注册
脚手架项目地址:http://gitlab.via.cool/mylink/mylink-common.git
3,单个活动页面发布成功
团购数据包
mylink营销中心项目
存储结束
7.根据奖励类型,增加奖励次数或生成抽奖码
判断结束
保存配置信息
正式活动
10.返回任务完成状态
6.返回完成状态
新配置更换旧有正式配置
0 条评论
下一页