• 莫_努力增肥25斤
    2021-05-25
    测试场景也是一方面,一般都是通过日志找出高频接口的调用比例,但低频接口也会出问题,而且往往从来未压测和优化过,甚至没几个人知道这功能存在,由于太低频在各种监控和统计里完全透明,一出问题就是阻塞db。

    作者回复: 说的非常好!低调用量≠低风险

    
    3
  • 勿更改任何信息
    2021-09-13
    现在全链路压测基本上都是验证峰值QPS,如果想验证整天的创建订单量达到了一定的量级,有可能要压几个小时,甚至十几个小时,这个压测合适吗?

    作者回复: 你好,全链路压测不适合长时间的压测测试或稳定性测试,主要原因有两点: 1.全链路压测一般在生产环境的低峰期实施,如果时间过长,压测工作跨越到高峰期,容易造成不必要的风险。 2.全链路压测会产生大量的数据,也需要投入人力持续值守和监控,成本比较高,不适合长时间执行。 除此之外,绝大多数服务容量的瓶颈都发生在高并发和高吞吐量的场景下,对于需要进行长时间压测来检测的问题(如:内存泄露、GC问题、磁盘容量瓶颈等),一般在线下测试环境进行测试也已经足够了,即便线下测试不完整,这些问题也可以通过简单的线上监控提前感知到,因此在这些问题上引入全链路压测的性价比并不高。

    
    1
  • Roy Liang
    2021-05-24
    原因可能是全链路压测不能完全复刻外部依赖接口,例如银联支付等场景

    作者回复: 回答的不错!对外部依赖的第三方接口调用处理不好,很容易成为全链路压测场景失真的一个因素。改进这一点的策略就是尽可能仿真,比如针对支付场景,我们可以mock支付回调,并按照真实回调的响应时间设置一定的延时,甚至可以制造一些波动,来尽可能逼近实际情况。

    
    1
  • 终身学习者
    2022-01-07
    压测置信度的影响因素: 1.压测流量的构造是否接近真实用户流量 2.压测链路是否完全覆盖 3.是否加入了背景流量或者低流量调用 4.底层基础架构是否和线上保持一致或者相同,如数据库分片一致、存储集群相同等 5.外部依赖的第三方接口mock、模拟异常 6.流量模型是否和线上一致,如短时突增流量、较长时间稳定高流量等模型

    作者回复: 总结的很好,尤其是最后一点,非常考验功底

    
    
  • Tricklet.
    2021-10-18
    压测出现1k/s的异常,这里的1k/s应该是指网速吧。那s1等级的标准应该比s0松一点吧(至少网速大于1k/s才合适呀),这里老师辛苦看下标准是否有误呢?或者是我理解有问题!请老师解答

    作者回复: 你好,这里的标准本身没有问题,1k/s指的是异常量(即每秒抛出1k次异常),异常量的制定标准需要参考流量(不是网速),没有严格的标准,一般来说是一个经验值。

    
    
  • dalek
    2021-06-04
    针对于常态化压测中值守人员的问题,是否可以使用无人值守或者减少值守人员的方式来做?比如采集相关指标对压测配置修改、压测状态同步…这个有尝试过么?是否有效?

    作者回复: 这是一个很好的思考方向,狭义的压测执行期间的无人值守,在技术上的难度并不大,由压测平台按照预置的策略去自动化施压,并对接外部监控系统(指标需要提前设置),在识别到风险时主动熔断压测或变更策略,完全可以做到不需要人的干预。风险在于对接的监控指标的完备性,但一般互联网公司的NOC团队都是随时处于值班状态的,可以兜底风险。 广义的说,我们还希望能做到压测全流程的无人值守,包括压测前(准备压测脚本&数据)和压测后(分析结果&输出风险项)的低人力甚至无人力投入,这就有很大的难度了。业内是有一些实践的,比如通过埋点的方式自动从流量入口梳理链路;包括类似于你提到的通过定期采集线上各接口的流量数据,去反向对齐压测时各接口的压力配比,等等,都是在朝着这个方向努力。

    
    
  • 车江毅
    2022-11-24 来自浙江
    https://gitee.com/chejiangyi/lmc-autotest 全链路压测实践 分享无人值守,自动化日常压测的例子。
    
    
  • 车江毅
    2022-11-24 来自浙江
    如何做到无人值守,这个是个好问题!!!
    
    
  • 于加硕
    2022-06-28
    全链路压测 压测频率跟不上服务变更的频率
    
    