课程定制的背景
软件性能因直接影响到用户体验,越来越成为产品的核心竞争力。快速、稳定、便捷变为软件系统的基本标准。如何进行全面有效的性能测试?如何定位系统地性能问题?如何系统化的进行系统性能调优?这些问题困扰着技术团队。
本课程的授课内容全部源于性能测试建设的最佳实践总结与探索。在培训方法上,通过课堂讲授(演示和案例培训相结合)、实际操作与同步练习,将性能测试的工具与技术、业务性能模型设计、性能测试过程管理、性能瓶颈诊断分析与系统性能调优结合在一起,达到持续提升企业性能测试能力的效果。
课程主要解决的问题
总体定位:实践类分享课程,全程学员同步练习,老师点评分析,即学即用。
具体收益包括:
1. 软件系统的性能模型设计及性能标准;
2. 性能测试执行过程与执行方法;
3. 性能测试工具及执行实战;
4. 性能测试的结果分析与问题定位、性能瓶颈;
5. 掌握端到端分层(接入层/逻辑层/数据层)的性能调优与改善方法;
6. 掌握服务器性能测试及最优化设置与调优策略;
7. 掌握数据库性能测试及最优化设计与调优策略;
8、移动APP性能测试及性能分析;
课程授课方式
结合贵公司具体业务系统,如何系统性、全面性的执行性能测试以及系统中遇到的性能问题分析为主线,通过实践分享与课堂练习,让技术团队进一步掌握软件性能测试的工具与方法、分析、定位、调优能力。
课程安排
课程模块 | 详细内容 |
性能测试 理论与测试需求分析 | 一、 性能测试基本过程 1. 性能测试原理与方法 2. 性能测试执行与调优常见误区与分析; 3. 性能模型设计与管理(重点) 4. 性能测试需求与性能指标 5. 性能测试环境分析与管理 6.开发/测试各阶段的性能测试执行方法与工具综述 7.性能测试方案(单业务、混合业务、过载、压力测试等,性能测试数据、性能测试环境等)及实例 8、Web系统性能测试标准 1)响应时间 2)处理能力 3)稳定运行 4)资源使用 5)配置设置 9、APP性能标准 10、性能测试用例设计及实例 互动及讨论:针对所在公司的软件系统,如何设计性能测试标准与方案? |
性能测试工具与问题初步定为 | 性能测试工具loadrunner执行实战(基础简化,重点讲技巧) 课程内容: 1. 学员一起完成所学案例的性能脚本制作:loadruner为基础工具,以实际应用系统为例,同步操作学习协议选择、脚本的制作与调试、集合点、检查点、动态关联方法实例、IP数据池、脚本调试与优化、工具使用技巧等; 2. 学员一起完成所学案例的性能场景加载及设置:controller介绍与设置、SLA协议的使用场景、监控及设置、tps、响应时间、资源监控、数据库监控、IO监控、用户数设置项的设置原理技巧;单业务测试、峰值业务测试、过载业务测试、压力测试、稳定性测试的设计与控制; 3. 对所学案例进行不同测试场景及监控器执行:掌握通过测试工具同步操作实例完成性能测试整个过程;期间包括资源监控、linux资源监控(内存、CPU、IO的分析指标实例讲解)、web容器监控等; 4.对所学案例性能测试执行后的结果进行分析,找到性能问题点:通过同步实例联系掌握如何生成测试报告,如何分析TPS图表、响应时间图表与页面细分图的请求定位(server time、sendtime、reveive time等的分析); 掌握处理Loadrunner的结果分析图表:包括各种图表,合并或分拆图表,分析及确认图表要素等;掌握通过分析性能测试结果,确定问题定位; 5.案例中性能问题测试出来进一步分析明确:会发现有前端页面问题、代码问题、数据库交互问题、设计问题、web平台与数据库配置问题。 互动及讨论:根据学员的练习执行进度与问题,沟通及指导,现场解决问题。; 互动与练习:性能测试全过程实例操作 |
性能问题分析与系统调优 | 一、问题引入:如何针对性能问题进行分析与系统调优? 二、问题解答:性能问题分析与性能调优 常见性能问题: 1、 交易响应时间慢或失败,如何分析? 2、 系统处理能力无法达到预定标准,如何分析? 3、 系统资源使用高,CPU、内存、IO、磁盘、连接如何分析? 4、 压测过程中大量错误,如何设置和避免? 5、 系统处理无法长时间平滑稳定执行,如何找到瓶颈? 6、 数据库、web容器、缓存等使用异常,如何监控分析? 问题定位与分析,一起同步操作: 1.针对前端问题(加载项、加载元素、顺序、长连接等),学习web前端问题定位工具(Httpwatch、Yslow、sieve)及定位系统的应用性能问题与前端代码优化方法及策略; 2.针对数据库的相关问题(语句编写问题、索引使用、表分析等),学习oracle数据库的问题定位与分析,以及如何调优及策略; 3.针对代码中发现的问题(内存泄漏、代码执行效率低、代码写法等),学习代码级问题定位及调优工具(jprofiler/jviualvm),明确代码瓶颈点及调优策略(包括O型标识法等); 4、针对设计层面发现的问题(缓存处理、集群等),学习设计层面如何进行系统调优,包括分布部署、集群、分库、读写分离、异步处理等几十个具体策略; 5、针对配置层面发现的问题(会话、连接等),学习操作系统、应用、数据库、网络的最优化配置;特别是web容器的关键参数配置、缓存的关键配置、数据库的关键配置,现场操作掌握; 6、针对资源:如何深度分析CPU、内存、磁盘、网络、连接,通过分析发现资源使用的问题、代码的问题、配置的问题等; 7、案例分享:老师做过的大量案例现场分析与分享讨论 互动及讨论: 1、 学员的练习和测试分析情况,老师进行点评; 2、 解决学员具体问题 |
手机app性能测试 | 1、 手机app性能测试脚本制作; 2、 手机app测试指标及测试方法 3、 手机app测试过程与测试结果分析 |
性能经验分享与问题解疑 | 一、性能测试经验分享 二、学员互动与探讨(在课程中有穿插) |