单接口压测和多接口压测tps区别_性能压测-让你了解我们公司真实的过程

作为一名金融公司的软件测试工程师,我参与了多次性能压测,尤其是针对直播软件的TPS优化。去年,面对50万人观看的压力,我们经历了优化、限流和生产压测,但实际只达到1W人。今年,尽管系统迁移降低了目标,但在压测中仍暴露出性能问题,经过不断优化和调整,最终在去掉限流后,3000并发达到3.3万TPS,但4000并发时出现大量500错误。直播结束后,实际只有4000多人在线,揭示了压测与实际的巨大差距。
摘要由CSDN通过智能技术生成

e3bcdbe8667b65dcc79f47d03426696d.png

我在一家金融公司做软件测试工作,因为用户量大,以前经常出现性能问题,最近几年领导也非常重视性能压测,所以我也做了不少接口压测。

那么重点来了,压测在生产上压最真实,测试环境无法评估生产能满足多少tps,包括机器性能、数据库数据量、数据占比等,无法按比例估算。

生产压测毁青春,这是我们自娱自乐的话,每次都差不多通宵才能完成。去年3月公司财报要用到自己的直播软件,要达到求5分钟50万人进入观看,于是各种优化、限流,优化后上生产,在生产上压测性能和看看限流是否生效,结果直播结束后总人数才1W人。坑爹~~

今年又来了,要求5分钟10万用户,比去年评估低了一点,又要压,为啥呢,因为系统迁移了。不过这次确实压除了性能问题。 不多说,01:00版本发完,开始压测,3000并发起压守不行,最后调整成500也报错:

6715acda62cb455148d4b6e4d69103f5.png

01:30-03:48夜开始各种优化,调整redis参数配置:maxTotal maxIdle minIdle,调优后还是报错,500并发都支持不了,3:30左右终于找到原因了,确实代码没处理高高并发情况,然后改代码部署。

03:50-04:00 部署好了就开始压,并发3000 TPS3:3.2万,错误率56%,为啥tps这么高,因为有错误的也算在内,错误日志返回403,查了半天,咋了呢,ng层限流了,开发运维不会关闭这个限流,关键人物不在场,over了,今天到此结束,写下报告发给邮件通知各位领导。

04:30下班了离开公司。

周一来了,各位老大说这不行啊,周三就要开始直播了,限流去掉再压,到后凌晨,开始了:

24:00-02:30发版出现问题,运维处理,我们干等着。

02:36-02:42 限流去掉压了3000并发,1.7万tps,没问题 ,看来不错呀~~

02:46-02:56 4000并发67.84%的报错,报错500,找不到原因,运维不相信 来个17000并发试试,结果不幸,顶层忙线程比较多,找不到原因,先这样。

还要上应用层限流代码,上完继续压有没有效果,4点多差不多结束了,写写报告,回家。

周二来了,还是不行啊,找原因,运维说可能熔断了,可能maxthread配置导致的,晚上继续压吧,这次我们经理挡住了,不能这么玩,晚上没有一个靠谱的支持。

周三直播开始,我没有去集体会议室观察流量情况,等直播结束了,报告出来了,总人数4000多人。说好的5分钟10万用户哪里去了,哈哈~~

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值