美文网首页
(十二)性能测试-一次完整的压测

(十二)性能测试-一次完整的压测

作者: 安小龙 | 来源:发表于2018-01-03 17:10 被阅读0次
测试对象

本次测试对象为Java开发的用户行为采集系统,只要用户在客户端有相应的用户行为,就会触发数据采集系统收集并记录这些数据到数据库。

测试目的

1.验证现有集群环境,数据采集系统是否能够将tps提高到2000以上且稳定运行。
2.找出当前集群环境的性能瓶颈。
3.验证消息中间件RabbitMQ处理大量数据的效率。

部署架构
01.png

nginx集群环境部署在同一台服务器上,Jmeter部署在另外一台直连服务器上,各个应用中间件按照生产标准优化。

测试脚本

Jmeter脚本中包含用户行为采集的各个接口对应的http请求,不添加任何脚本策略。


02.png
测试结果
case1:500个线程,5秒启动,持续运行600秒

响应时间小于3S,错误率为0.0%,吞吐率为10963.5/sec


03.png

CPU使用率74.5%,内存剩余25G


04.png
case2:1000个线程,5秒启动,持续运行600秒

1000个线程下,吞吐量明显下降,错误响应比例高达7%,服务器资源开始出现空闲,说明当前集群无法满足该性能压力


05.png
06.png
case3:800线程,5秒启动,持续运行600秒

响应时间小于3S,错误率为4.65%,吞吐率为9479.2/sec


07.png

CPU使用率75.9%,内存剩余23G


08.png
case4:Jmeter注入1400万条数据,观察并记录RabbitMQ效率

500个线程循环4000次(用时21分30秒)


09.png

Jmeter运行完毕后MQ排队情况


10.png

mysql数据写入情况


11.png
测试总结

1.通过case1可以看出,当前集群环境完全可以满足tps>2000的响应需求,并且在500个线程压力下tps可以稳定在10000左右稳定运行。

2.通过对case1、case2、case3的测试结果,当线程数为500的时候,系统稳定运行;当线程数为1000的时候,系统开始出现高达7%的错误响应且服务器资源空闲,tps较case1下降;当线程数为800的时候,响应的错误率下降为4.6%且服务器资源开销正常,tps较case2有所提升;推测当前集群环境能够承受的Jmeter线程数在500~800之间,最大tps在10000左右。

3.通过Jmeter向系统注入1400万条数据,系统总处理时间为1小时19分33秒,数据没有丢失情况。Jmeter在21分30秒时候就已经停止请求,此时RabbitMQ中缓存了大概1260万条消息,处理花费59分钟,系统在没有请求压力情况下平均每分钟处理21万条数据,在有Jmeter压力请求压力下平均每分钟处理6.5万条数据。

相关文章

  • (十二)性能测试-一次完整的压测

    测试对象 本次测试对象为Java开发的用户行为采集系统,只要用户在客户端有相应的用户行为,就会触发数据采集系统收集...

  • 性能压测学习大纲

    一、压测的目的 二、压测的完整流程 三、压测场景分析/组织测试脚本 四、压测数据准备 五、压测指标监控 七、压测结...

  • 当接口(系统)碰到性能问题该怎么办

    1.身体检查 做一次压力测试,可以了解系统大致的性能 压测建议: DB:压测有写流量要先建影子表tair:压测有写...

  • kafka-flink性能测试规划(上)

    1.压测方案 1.1 压测目的    本次性能测试在正式环境下单台服务器上Kafka处理MQ消息能力进行压力测试。...

  • 2022年 读书清单

    1、测试技术-性能性能测试实战 30 讲高楼的性能工程实战课 doing全链路压测实战30讲 todo性能工程高...

  • 性能测试小知

    今年双十一之前,我司进行了一次压测。因为用户量不大,所以压测要求也不高。但是也算是一次机会再一次接触性能测试。其实...

  • 【MySQL】InnoDB引擎TokuDB引擎对比测试

    前言:前段时间做服务器性能压测时,顺便也一起做了innodb与tokudb引擎的性能压测,测试方法及测试结果如下。...

  • [转] 进行压测前的准备工作

    线上压测策略 为什么要进行线上压测?线下环境的机器配置低,规模数量小,测试结果不能反映线上真实性能情况; 线上压测...

  • 菜鸟的性能测试之路(四)——Jmeter生成性能报告

    接上次我利用了Jmeter做完压测之后,现在我就要把它自动生成一个HTML的性能报告了。 由于性能测试测的是性能,...

  • 服务流量限制

    性能测试 写个简单的web服务,再用工具进行压测。 使用wrk 工具进行压测: 常见限流手段 流量限制的手段有很多...

网友评论

      本文标题:(十二)性能测试-一次完整的压测

      本文链接:https://www.haomeiwen.com/subject/nixknxtx.html