测试驿栈-由浅入深学性能 五分钟 TPS 调优
「All right reserved, any unauthorized reproduction or transfer is prohibitted」
概述
本地起了一个项目,对 login 登录做了 200 并发的负载测试。发现 tps 最高上升到 550 左右,然后持续的剧烈波动
本着怀疑一切的态度,觉得 tps 应该有上升的空间,于是去监听一下进程。
分析过程
习惯性的做线程 dump
结果发现一大堆线程阻塞了(BLOCKED)。为什么会阻塞?日志已经很明显提示了,线程疯狂打日志导致的堵塞。
线程为什么会疯狂打日志?这里也提示了,在调用checkLogin方法的时候抛出来的日志。
代码检索
代码拉出来,搜一下checkLogin方法。于是就发现登录这里每一步都打了一条日志。批量处理的时候,很容易就把线程给阻塞了。
现在把这些日志全部禁用掉
重启项目,脚本回归
现在 TPS 上升到了 800 左右
TesterHome 为用户提供「保留所有权利,禁止转载」的选项。
除非获得原作者的单独授权,任何第三方不得转载标注了「All right reserved, any unauthorized reproduction or transfer is prohibitted」的内容,否则均视为侵权。
具体请参见TesterHome 知识产权保护协议。
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!