APP性能测试诊断与优化--通过现象猜本质

这段时间忙着帮北京某城商行做移动端性能测试,因移动端IPD、手机等都是无线设备,而且该客户是面临全国各地用户提供移动端APP支持,为了更真实的模拟测试,我跟该项目的项目经理沟通直接在厦门本地通过无线网借用LR工具模拟并发压力测试。很感谢移动架构组的技术专家肖工的帮忙,让我顺利的在本地搭建了模拟机,并跟该项目经理要了生产环境的APK工程包部署后,并根据项目组提供的业务操作手册学习业务知识,后使用LR开发脚本进行压力测试。
       因地域距离关系,而且是直接在生产环境压力测试,生产环境在北京,压力测试机器在厦门,通过无线压测,所以测试过程对服务器资源使用监控成为一大问题,只能在每次压力测试时通过微信交流,在碰到响应时间等相对比较长或者TPS不稳定时,让项目经理协助监控,拍照截图我分析,还好自己这十几年到出差支持项目做性能故障分析优化,对各类问题通过LR前端能猜测出后端是数据库问题还是应用问题,虽然没办法做到真正的知微见著,但是还能通过现象了解本质问题,并提供优化建议,这主要是因为工作走心,也有事物去总结积累的效果。
      刚开始压测时因是默认部署后默认配置等问题导致响应时间偏高,TPS低,经项目经理反馈应用CPU 都82%以上如下图:


      测试了四五支交易发现都有共性问题,响应时间都是六秒以上,手机端响应时间一般是258原则,超过5秒使用者都会烦躁直接关闭,一般建议都是3秒以下,因此指标没办法满足。
       猜测应该是应用服务器配置不合理导致的,因为登录退出、页面连接等也有共性问题,大概测算下后,给项目经理提供相关的配置优化意见后,竟然真的解决了,主要是tomcat相对好优化,然后通过再压测响应时间都在1秒以下。


         一般银行的APP移动端的应用逻辑也不会太复杂,代码写法问题相对比较少,而且是胖客户端的,数据传输虽单机业务数据量少,但是并发大,在测试过程中如果发现性能问题,一般是网络带宽问题或者后端处理逻辑问题。假如测试过程中如果大部分交易有问题一般是软硬环境配置不合理居多,如果有时偶尔一两支查询交易响应比较慢,一般是SQL写法问题引起的,建议先看SQL语法执行路径如何,是走全表扫描,全索引扫描?是否因多表关联等写法导致的,这时在根据实际业务情况进行优化。--当然问题原因很多还是多监控诊断分析,性能监控数据说话才更真实和权威。

时间: 2024-10-11 10:30:50

APP性能测试诊断与优化--通过现象猜本质的相关文章

某系统单点登录性能测试诊断分析优化过程

某系统单点登录性能测试诊断分析优化过程 原因说明 下面描述的是前段时间协助本地一家上市IT公司做产品技术选型时对他们的技术框架进行性能测试与优化过程记录,因测试过程中涉及数据库选型和各类问题的监控分析优化,篇幅比较大,本次主要是描述在同样基础软硬件下.同样应用工程包和框架.同样数据量下,针对MYSQL环境下进行单点登录压力测试的结果过程记录. 初始环境配置 测试内容 1.            用户登录,首页查看,退出 2.  某业务交易新增.查询.删除.上传文件 3.  业务审批流程创建.提交

移动app传统测试流程优化

概述 在传统的软件测试流程中,每一期需求从开发到上线都要经历从需求分析与评审.测试用例评审.开发.测试.发布的流程.其中测试包含了后台测试.前端web测试.客户端测试.后台测试又包括后台代码逻辑测试.接口测试.接口压力测试等,web端测试包含了前端页面的UI界面测试.PC与移动端浏览器兼容性测试和功能测试等,而客户端测试包含的测试项目较多,而每项测试又相对技术含量较高,从而引入了专项测试的概念.和针对客户端每期需求所做的功能测试不同,专项测试的结果虽然与产品的具体功能相关,又包含独立于产品需求功

[FMX] Android APP 启动黑屏优化补丁

使用说明 *************************************************** Android APP 启动黑屏优化补丁 作者: Swish, YangYxd 2016.01.16 Version: 1.0.0 QDAC官方群: 250530692 *************************************************** [安装方式] 双击Setup.bat安装补丁文件(安装时会作备份) 双击Uninstall.bat可以恢复. [

性能测试平台效率优化的一次经验(python版)

在做性能测试平台的优化过程中,由于启动任务相对其他测试任务比较频繁,而目前30次两个包的交叉对比(30次)测试需要耗时30分钟整,因此打算优先对测试流程做一次优化,将测试时间消耗降低到20分钟. 由于一开始估计乐观,认为启动时间,一台设备理论上启动顶多1s,1*2*30也就60s,加上其他开销,5分钟都够了,能减少到20分钟应该小半天就能做完了. 于是就来到了第一步: 1.review代码流程 (1)把启动流程里相关的sleep全部review一遍 确实有一点效果,因为有一部分sleep在启动任

转:携程App的网络性能优化实践

http://kb.cnblogs.com/page/519824/ 携程App的网络性能优化实践 受益匪浅的一篇文章,让我知道网络交互并不是简单的传输和接受数据.真正的难点在于后面的性能优化 下面对文章中的几点进行总结和整理,作为个人的笔记 常见的网络性能问题: 1.DNS问题 DNS被劫持或失效 DNS解析慢或者失败 2.TCP连接问题 TCP的连接端口被封 TCP连接超时 3.write/Read问题 设置合理的读写超时时长 客户端所处环境的常用端口被限制 网络切换(即当用户的网络在WIF

Emmagee app性能测试工具使用教程(转)

Emmagee app性能测试工具使用教程 by:授客 QQ:1033553122 简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个App的CPU,内存,流量,启动耗时,电量,电流等性能状态的变化,且用户可自定义配置监控的频率以及性能的实时显示,并最终生成一份性能统计文件. 实现原理 1.监控应用CPU原理 Android系统是基于Linux内核的,所以系统文件的结构和Linux下一样,系统总体CPU使用信息放在/proc/stat

【深入JVM内核—原理、诊断与优化】第2期开课了

[深入JVM内核—原理.诊断与优化]的讲师“葛一鸣”,人称“一哥”,毕业于浙江工业大学,计算机软件与理论专业硕士,是国家认证系统分析师,OCP.2012年出版过<Java程序性能优化>,荣获51CTO读书频道“最受读者喜爱的原创IT技术图书奖”!! 葛老师得到了第1期140名学员的热烈赞扬,现第2期招生中,错过这期,再等半年. 一.为什么要开JVM培训课   1 百度搜大数据开发人才要求信息,发现大部分都需要有 JVM知识2 关于JVM知识的培训,目前线下的有几家,但水平参差.3  Scala

关于APP性能测试脚本录制的四种方法

大家好,近段时间很多人问我关于APP性能测试方面问题.一直是打算发表的,由于多方面的因素拖到现在,有次公司让我给客户讲解APP性能测试,回来后就一直觉得有必要写下.好了,不多废话. 目前版本LoadRunner12有图下4种方式生成脚本. Recording and Analyze Traffic Analyze Traffic Record Emulator Proxy Recording 第一种:Record and Analyze Traffic 在电脑上设置wifi热点,需将网络共享到该

android app性能测试工具GT源码获取以及部署

GT是TMQ(腾讯移动品质中心)研发的一款app性能测试工具.官方地址:http://gt.qq.com/index.htmlgithub地址:https://github.com/Tencent/GT运行工具:eclipse ,我用的专门集成android环境的版本如下图eclipse下载地址:链接: https://pan.baidu.com/s/1csbzl0 密码: 3633 第一步 去github clone代码在cmd命令行中进入到事先创建好的项目存放文件夹下执行 git clone