移动端压力测试

移动端压力测试

一、monkey APP性能测试

(adb shell monkey 1000

adb logcat | gerp START获取包名和activity名

adb shell monkey -p 包名 1000

)

二、压测查看那些指标

TPS数值、CPU占用量、测试成功数量、error信息(服务器配置(CPU、内存、磁盘、网络I/O、进程数)、数据库配置(效率低下SQL、锁、缓存、会话、进程数)、中间件(线程池、JDBC连接池),应用(QPS、耗时、错误、同步异步、线程数、缓存队列)等方面考虑。

接口压测:压测主要观察的是多大压力下系统的性能会变得不可接受,或者白屏崩溃,从而分析系统额瓶颈,为后续优化做参考。

三、协同日历接口性能测试报告

1. 测试结论

此次预发压测3个接口,以UMP线上接口峰值调用量为依据,设置混合压测比例:接口getCalendar、getScheduleList(参数是4个月)、getScheduleList(参数是1周)按1:1:1.5的比例混合压测:

getCalendar接口,在30线程并发时,接口平均时间52.14 ms,TP90时间62 ms,TP99时间84 ms,TPS 203.9。该接口UMP线上接口峰值5867次/5分钟,此次压测值相当于线上接口调用量的11.12倍。

getScheduleList(参数是4个月),在30线程并发时,接口平均时间52.14 ms,TP90时间54 ms,TP99时间86 ms,TPS 204。

getScheduleList(参数是1周),在30线程并发时,接口平均时间36.49 ms,TP90时间46 ms,TP99时间76 ms,TPS 295.4。

该接口此次压测总体TPS 499,该接口UMP线上接口峰值14469次/5分钟,此次压测值相当于线上接口调用量10倍。

压测过程中,应用服务器CPU资源占用率在43%左右。

2. 风险及建议

测试过程中发现,磁盘写入量太高,制约了系统性能的提升;系统在30线程并发时,达到最优调用量。再增加并发压力到60线程时,性能下降,此时CPU占用40%左右,磁盘写入量却高达60M/S,如下图:

建议排查日志内容,减少日志输出量,现在info日志里打印了太多参数信息。

3. Docker配置

服务器 机房 压测机器配置

预发两台docker 汇天 4C 8G

4. 测试执行结果

4.1 总体情况:

30线程并发:

60线程并发: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200920222116482.png#pic_center)

观察上图发现,当线程并发数从30增加并发压力到60时,TPS数值反而下降。原因为:磁盘写入量太高,线程在等待磁盘IO,制约了系统性能的提升。

4.2 TPS趋势

TPS趋势平稳,系统表现稳定。

30线程并发:

60线程并发:

4.3 资源占用

压测过程中,应用服务器CPU资源占用率在43%左右,如下图:

移动端压力测试相关教程

html开发的移动端怎么做压力测试,移动端压力测试相关推荐

  1. html移动端怎么做城市选择,移动端页面单位的选择(px, em, rem, vw)

    px, em, rem的区别: px:绝对字体大小 em:基于一个基数来计算出相对字体大小.(移动端用的少) rem:基于根节点(html)的字体大小来计算. vw:可视区宽度单位.1vw等于可视区宽 ...

  2. 语言做一个自动售货机软件_软件开发手机app系统软件高端定制做一个app软件要多少钱...

    软件开发手机app系统软件高端定制-做一个app软件要多少钱 APP开发分原生APP开发和在线制作,我们来看下这两种都需要多少费用吧. 1.原生APP开发(定制开发) 互联网是个神奇的大网,大数据开发 ...

  3. php推送手机,PHP_解析php做推送服务端实现ios消息推送,准备工作1.获取手机注册应用 - phpStudy...

    解析php做推送服务端实现ios消息推送 准备工作1.获取手机注册应用的deviceToken(iphone手机注册应用时返回唯一值deviceToken) 2.获取ck.pem文件(做手机端的给) ...

  4. uniapp简单搞定支付传统的开发支付需要前后端做很多工作,各种参数的处理,签名,秘钥的验证校验等,尤其是涉及到多种不同的平台支付,更是繁琐;而且以往的支付是由后端主导的,如果后端是个菜鸡,那么做这

    uniapp简单搞定支付 传统的开发支付需要前后端做很多工作,各种参数的处理,签名,秘钥的验证校验等,尤其是涉及到多种不同的平台支付,更是繁琐:而且以往的支付是由后端主导的,如果后端是个菜鸡,那么做这 ...

  5. iOS开发-使用OC搭建自己的Socket 包括服务端和客服端

    iOS开发-使用OC搭建自己的Socket 包括服务端和客服端 前言 开发须知 客服端 服务端 两端测试 前言 iOS开发中需要使用到Socket通信的地方,socket分为UDP和TCP,这次分享的 ...

  6. SLAM导航机器人零基础实战系列:(五)树莓派3开发环境搭建——5.Android手机端与robot端ROS网络通信...

    SLAM导航机器人零基础实战系列:(五)树莓派3开发环境搭建--5.Android手机端与robot端ROS网络通信 摘要 通过前面一系列的铺垫,相信大家对整个miiboo机器人的DIY有了一个清晰整 ...

  7. 最详细的【微信小程序+阿里云Web服务】开发部署指引(四):搭建服务端数据库

    文章目录 前言 一.连接主机数据库 二.创建数据表结构 三.准备测试数据 专题文章链接 前言 做完了前面的注册申请工作,今天我们开始进行程序的开发. 这篇文章,我们要完成的是服务端数据库表的创建. 一 ...

  8. 什么是压力测试,在哪里做压力测试,软件压力测试存在哪些问题?

    软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分.软件压力测试的基本思路很简单: 不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试. 通常要 ...

  9. Revit二次开发——不启动Revit,做rvt文件数据导出

    Revit二次开发--不启动Revit,做rvt文件数据导出 Node.js部分 调用C#端供外部调用的dll C#部分 调用RevitNet.dll,做数据导出exe 做外部调用dll 总结 Nod ...

最新文章

  1. RFM模型分析与客户细分
  2. javascript柱状统计图表
  3. Spring MVC生成PDF文件代码示例
  4. Java黑皮书课后题第2章:2.15(几何:两点间距离)编写程序,提示用户输入两个点(x1,y1)和(x2,y2),显示两点距离
  5. [Python爬虫] 之二十七:Selenium +phantomjs 利用 pyquery抓取今日头条视频
  6. android用户界面编程技巧——更新请求
  7. 为什么要使用语义化标签
  8. php 保护变量,PHP安全:变量的前世今生
  9. 推荐系统笔记二、矩阵分解协同过滤
  10. ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  11. 计算机网络教程 azw3,Windows 10从入门到精通(pdf+epub+mobi+txt+azw3)
  12. 速魔与图马思特优缺点对比
  13. 华为数通笔记-策略路由
  14. 惠普打印机驱动下载(电脑系统和打印机型号自动匹配)
  15. vue地图绘制圆形、椭圆、矩形或其他自定义图案
  16. JIAR 使用笔记 - 素材
  17. 网络赛1-D - Find Integer HDU - 6441
  18. python:超级画板
  19. 故障案例:连接服务器失败/服务器无法上网
  20. java中gui_java中GUI是什么意思?详细图解

热门文章

  1. x?a:b是什么意思?
  2. PXIe/PXI背板 设计文件 全混合8槽 4 Link架构 系统带宽14GB/s 原理图PCB 单槽4GB/s 兼容主流PXIe厂商PXIe控制器
  3. 金杉号:目前城市里最容易做的小生意有哪些?
  4. 驭势科技吴甘沙:无人驾驶业务已有造血能力 将试点机场物流商业化
  5. 痞子衡嵌入式:盘点国内RISC-V内核MCU厂商(2019年发布产品)
  6. 面试题03.01 三合一
  7. Demo系列一之 Form表单下载Excel文件
  8. 计算机专业课如何阅卷,计算机基础课考试自动阅卷技术研究
  9. win7系统WiFi共享上网设置与命令延伸
  10. 住宅区和住宅建筑内光纤到户通信设施工程设计规范_弱电智能化|光纤入户的配置原则及设计案例...