接口性能测试随笔

之前很少做性能测试,经过两周的奋战,终于拿出了一份报告。过程坎坷,记录以备忘。

1、jmeter java请求,记得在finally代码块中调用SampleResult.sampleEnd(),否则测试时无响应时间。

2、YOUNG GC频率比较高,调整启动参数,加大堆初始内存 -Xms4096m

3、存储过程的效率。自己写的存储过程,半个小时才插入20万数据;经开发优化后,不到5分钟插100万条!!!

存储过程,不要嵌套类似这样的查询,否则效率很低。 insert into table_name1 values ((select id from table_name2 where xxx), value2, value3 )

4、查询接口的测试,要考虑db中表的数据量

5、往db插测试数据的时候,时间字段尽量要随机,不要CURRENT_TIMESTAMP(),否则如果查询接口按时间段查询,30秒间隔会返回很多数据,测试结果失真

6、分页查询,效率会随着offset增大而大幅降低。40并发,把24核的物理机CPU干到95%,太可怕!找dba排查,定位到是分页查询问题,把接口入参的limit和页数减小,CPU下去了,TPS是之前的三倍。当然查询语句也有问题,select * from table_name1 where id in (select id from table_name2 where xxx)这种语句也很慢

7、jdk/bin下,有很多的性能监控用的小工具

8、关注压力机的CPU和内存使用率,有时候是压力机性能瓶颈,导致服务性能指标上不去

9、测试报告不要只是堆叠数据表格,主要是突出性能场景、性能分析、问题汇总、优化建议等

10、在新机器上配置环境,部署服务很费时间;由于是新机器,会出现N多问题,工作量评估的时候要考虑到

时间: 2024-12-17 06:42:20

接口性能测试随笔的相关文章

C#接口性能测试--计算执行时间

在做程序的时候,肯定会遇到给他人提供接口,或者使用他人接口的地方.对于一个开发者来说,不管是提供给他人的接口还是,自己提供给他人的接口.都要进行测试. 对于很多的测试,需要详细的记录 该接口的时间范围,比如 该接口的性能为   10ms 100ms的地方. 既然要了解每个接口的性能,该测试不是为了 测试接口的正确性,只是在测试正确性的时候 同时,记录一下该接口的执行时间. 最近,因为要开发一个新项目,而且新项目中会用到旧系统的接口.所以需要对旧系统提供的接口进行测试,进而决定,里面的接口是否需要

Jmeter Http接口性能测试

Jmeter Http接口性能测试 1.      启动Jmeter Jmeter下载解压即可使用,Jmeter启动,点击D:\ProgramFiles\jmeter\apache-jmeter-2.8\bin下的jmeter.bat就可以了. 2.      添加线程组 如下图添加线程组 线程组相当于loadrunner的vuser,这里配置线程组的各项内容.主要有以下几点需要配置: 1)线程数:设置发送请求的线程数目. 2)Ramp-up period: 就是总共设定的线程数据在多长时间内启

接口性能测试方案 白皮书 V1.0

一. 性能测试术语解释 1. 响应时间 响应时间即从应用系统发出请求开始,到客户端接收到最后一个字节数据为止所消耗的时间.响应时间按软件的特点再可以细分,如对于一个 C/S 软件的响应时间可以细分为网络传输时间.应用服务器处理时间.数据库服务器处理时间.另外客户端自身也存在着解析时间.界面绘制呈现时间等. 响应时间主要站在客户端角度来看的一个性能指标,它是用户最关心.并且容易感知到的一个性能指标. 2. 吞吐率 吞吐率指单位时间内系统处理用户的请求数,从业务角度看,吞吐率可以用每秒请求数.每秒事

jmeter简单的接口性能测试

原文转自:https://blog.csdn.net/lovesoo/article/details/78579547 Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件.相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工具之一. 本文为JMeter性能测试完整入门篇,从Jmeter下载安装到编写一个完整性能测试脚本.最终执行性能测试并分析性能测试结果. 运行环境为Windows 10系统,JDK版

jmeter实现服务器端后台接口性能测试

实现目的 在进行服务器端后台接口性能测试时,需要连接到Linux服务器端,然后通过命令调用socket接口,这个过程就需要用到jmeter的SSH Command取样器实现了. 脚本实现 设置CSV Data Set ConFig配置元件,参数化测试数据 设置SSH Command取样器,连接Linux后台,调用命令对socket接口进行性能测试 原文地址:https://www.cnblogs.com/jun-zi/p/12043514.html

接口性能测试(Jmeter)操作总结

以前常用SoapUI来做接口的性能测试,这次用的Jmeter,对需由客户端根据时间戳等登录参数生成随机token值和印签值来发请求的系统,非它莫属了.下面就这次测试的难点和操作注意问题展开总结. **航空订票APP性能测试以接口压测为主,采用JMETER压测工具,结合NMON监控服务器资源.采用两台测试机,分布式并发压测,在500个并发,800个并发压力下,记录服务器资源的使用情况,并作分析. 1.脚本准备: 测试中,发送的请求体以JSON代码为主,且每个接口要求有token值和印签值(根据请求

使用Jmeter进行http接口性能测试

在进行网页或应用程序后台接口开发时,一般要及时测试开发的接口能否正确接收和返回数据,对于单次测试,Postman插件是个不错的Http请求模拟工具. 但是Postman只能模拟单客户端的单次请求,而对于模拟多用户并发等性能测试,就必须借助其他的工具了,这里推荐功能强大的JMeter自动化测试工具 Apache JMeter - Apache JMeter? Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展

接口性能测试实战小结(附点评)

百度搜索:小强测试品牌 本文来自小强测试品牌学员作品,欢迎大家多多投稿,也期望各位学员再接再厉! 背景 有一个接口http的接口,GetPaymentURL,传递参数很简单,就是一个sessionID(类似于订单号),这个接口本身并没有什么东西,但是他调用了另外一个模块钱包的接口,钱包最终会返回一个paymenturl等信息给到GetPayment这个接口. 一句话,GetPyamentURL只时负责传递参数给到钱包的接口,主要业务逻辑都是在钱包里面,最终由钱包把结果返回给GetPaymentU

JMeter接口&性能测试

JMeter接口测试 目前最新版本发展到5.0版本,需要Java7以上版本环境,下载解压目录后,进入\apache-jmeter-5.0\bin\,双击ApacheJMeter.jar文件启动JMemter. 1.创建测试任务 添加线程组,右击测试计划,在快捷菜单单击添加->线程(用户)->线程组.设置线程组主要包含三个参数:线程数.Ramp-Up.循环次数. 线程数:设置虚拟用户数.一个虚拟用户占用一个进程或线程.线程数就相当于虚拟用户数. Ramp-Up:设置的线程数启动时长,单位为秒.如