写点什么

生产环境全链路压测建设历程 27:FAQ 之 业务模型相关

发布于: 2021 年 01 月 12 日

问题 1:每个用户都需要与用户中心交互获取 Token,大量用户的混合模拟测试,获取 Token 等鉴权信息,都是比较麻烦的问题。


两种做法

  1. 完整的模拟和 UP 的交互流程,的确比较复杂

  2. 参考天猫双十一相关的做法, 对于带有压测标记的用户数据,用户中心 UIC,做了一个简单的改造:

a) 构造一批压测用户数据到 UIC 的影子表

b) 对请求的 header 信息用 if 判断,当判定为压测用户和 IP 来源,则请求影子表

c) 返回对应的 token

问题 2:如何选择不同类型的场景(会员订单记录很多的、订单记录比较少的、年龄等其他涉及到个性化推荐等业务特性的用户类型)?如何开展分析?


  1. 类似淘宝的大卖家、小卖家的概念。大卖家,订单记录特别多;小卖家,订单记录相对少。 其实这个问题,要回到代码开发的一些基本的原则。 双十一相关的核心系统,如交易、商品、优惠、会员,有一些基本的原则

a) 单 SQL 单表

b) 单次查询不超过 200 条

2.在构造用户相关的数据的时候,在构造数据量特别大的时候,一般是对真实数据进行敏感信息的脱敏,来构造影子表的数据,这样能更能接近真实场景。

问题 3:压测中,场景的选取原则


1) 按照接口的比率来,接口的整体比率比较好确定。但是每个接口的入参很多,不同的入参可能业务逻辑差别比较大。比如 A 接口,入参是 a 时,访问第三方 C,入参是 b 时,访问第三方 D。这些参数的组合,如何很好的控制比率?

a) 天猫也面临这样的问题,主要的解决办法:是用分布式链路追踪的数据,做聚合,然后筛选出 top xxx 的请求链路,然后对其进行压测。

2) 按照场景来,一个场景对应的接口很多,需要提前分析出这个场景可能触发的接口,以及入参的情况,再按照一定的比率进行模拟压测。比如首页加载,实际上会调用 X 个接口,每个接口又有很多不同的入参组合。

a) 和第一个问题类似,用大数据平台来计算


发布于: 2021 年 01 月 12 日阅读数: 43
用户头像

还未添加个人签名 2017.12.21 加入

还未添加个人简介

评论

发布
暂无评论
生产环境全链路压测建设历程 27:FAQ 之 业务模型相关