1、性能测试研讨会,微博:陈能技 广州亿能测试技术服务有限公司 www.AutomationQA.com,主题,性能测试知识体系 性能测与性能试诊断分析 业界性能测试技术趋势,性能测试工程师的技能要求,国外公司一般分工比较细,国内要变通一下做法!,要精通性能调优,需要经历三个阶段,Phase 1,Phase 2,Phase 3,I dont know what I dont know,I know what I dont know,I already know what I need to know,- Charlie Hunt、Binu John Java Performance,工具,测试类
2、 LoadRunner、RPT、WebLoad、NeoLoad、Jmeter 监控类 HP SiteScope、Spotlight、Cacti、Nagios 分析类 HP Diagnostics、JProfiler、ANTS Performance Profiler,性能测与性能试诊断分析,分层性能测试与性能监控分析法 通道瓶颈诊断分析法 数据库相关软件系统的性能诊断与优化方法,分层的压测点、监控点,通道瓶颈度量分析,Web Server can process 50 requests in 100 ms = 50req / 0.1s = 500tps Web container parts
3、can process 18 requests in 300 ms = 18req / 0.3s = 60tps EJB container parts can process 9 requests in 150 ms = 9req / 0.15s = 60tps Datasource can process 40 requests in 50 ms = 40req / 0.05s = 800tps,数据库相关软件系统的性能诊断与优化方法,自顶向下 8-2原则 自底向上,自顶向下,设计阶段:业务规则设计、数据库体系结构设计、逻辑结构设计、物理结构设计、应用系统设计的分析与优化 开发阶段:索引策
4、略、SQL的设计分析与优化 产品阶段:平台相关性能分析与优化,包括CPU、IO等资源竞争的检测和调整,8-2原则,数据库体系结构设计和应用设计对系统性能的影响能占到80%,而硬件配置、参数调整等方面因素,只占到20%。 80%的性能问题是由20%的应用导致的,如少量大表的全表扫描导致的性能瓶颈。 80%的性能问题可以由20%的优化技术所解决。如简单的索引策略、执行路径优化等,能解决大部分的性能问题。,自底向上,1 检查系统的利用率 2 检查等待事件 3 检查物理IO 4 确定范围 系统级、模块级、用户级? 5 确定最消耗资源的SQL StatsPack、AWR报告 OEM中的Top Sessi
5、ons 6 分析执行计划(Explain Plan) 7 分析访问的对象(Size/Cardinality) 8 分析连接、访问方式 9 找出相关问题 10 确定解决方案 11 测试解决方案 12 生产环境实施解决方案 13 分析结果,业界性能测试技术趋势,云性能测试 前端性能与后端性能同样需要关注 移动应用性能测试 不仅仅关注响应时间 性能问题的预防,云性能测试,- 针对云平台的性能测试更高效的性能压力测试工具?例如:gatling - 利用云平台资源的性能测试,SOASTA、Gomez ,前端性能与后端性能同样需要关注,前端越来越复杂,Optimize front-end performa
6、nce first, thats where 80% or more of the end-user response time is spent.- Steve Souders,移动应用性能测试,Zona Research experiment Log files showed that a companys 40Kb (8 seconds to load) home page had a 30% abandonment rate. The company tweaked the home page to 34Kb (7 seconds to load). Abandonment rate fell immediately from 30% to 6-8%. All for one (1) tiny second difference in load time.,不仅仅关注响应时间,性能问题的预防,SPE 性能架构设计 性能代码分析 与持续集成整合的性能度量平台,