课程简介
本课程从架构性能的角度出发。解析了性能测试理论知识,分析性能测试的体系建设过程、性能测试团队建设过程,理清整个性能测试执行流程及整个过程的执行控制。详解业务统计数据到场景的转化过程。详解性能场景设计。详细讲解工具的使用原理,详细描述了性能测试执行过程中出现问题的控制方法。重点解析了性能分析的逻辑思路和问题处理方法。解析了性能测试工具、性能监控工具、性能分析工具、性能调试工具的各个方面。提高对整个系统的认知高度。描述了性能测试报告的编写技巧。
目标收益
针对个人的课程目标:
· 可以掌握性能体系建设思路;
· 性能测试团队建设思路;
· 性能过程执行控制能力;
· 性能分析逻辑思维能力。
针对企业的课程目标:
· 帮助企业、团队、个人提升性能意识;
· 帮助企业理清性能团队提升的痛点;
· 帮助企业快速理解架构级性能测试和分析优化的关键点;
· 帮助企业减少生产运营成本;
· 帮助团队、个人理清当前的瓶颈点。
培训对象
此课程适合于性能架构师、性能分析师、性能测试工程师、性能项目经理、软件质量管理人员、运维人员、开发工程师
课程大纲
性能综述 |
1.先看两个问题 2.性能测试与性能分析该有的范围 |
性能基本概念 (理解性能相关的基本概念及相应的使用方法。) |
1.性能测试定义 2.性能指标 3.性能建模(业务模型、测试模型) 4.性能方案 5.性能场景 6.其他基本概念 • 响应时间 • 并发 • TPS • 虚拟用户 • 场景 • 测试策略 • 流控/超时 |
性能管理 (如何在性能测试过程中管理团队; 如何在各团队间协调) |
1.性能组织结构(角色职责定义) 2.理解性能测试实施过程 3.Overview看系统性能 4.性能项目实施流程 5.性能瓶颈分析过程 6.执行过程控制 7.团队内协作 8.团队间协调 9.性能汇报 |
性能体系/方法论 (方法论只有用到具体的工作中才是实用的方法论。) |
1.性能体系/方法论 2.方法论的关键 |
性能场景设计 (找到单业务/接口、混合业务/接口最大TPS; 找到系统最优配置; 找到系统可持续运行时长; 验证系统异常处理机制; 系统可靠性分析;) |
1.场景设计逻辑 2.基准场景 2.1-单业务单用户场景 2.1-单业务多用户场景 3.容量场景 3.1-递增场景(混合业务,找到最大TPS) 3.2-配置测试场景 3.3-衰减测试场景 4.稳定性场景 5.异常场景(失效模式) 5.1-LB/HA场景 5.2-宕网卡/主机/应用场景 |
主流性能工具解析 (解析通用并且关键的性能工具实现机制) |
LoadRunner解析 Jmeter解析 参数化 关联 并发 事务 思考时间 平均值、标准方差 |
性能工具解析之其他性能测试工具 (解析其他常用性能测试工具) |
iperf sysbench FIO hdparm ab |
性能监控设计 (部署架构; 技术架构; 业务架构;) |
1.全局监控 2.定向监控 3.监控设计 4.监控层次细化 |
性能监控实例 |
1.Grafana+Prometheus安装配置 2.Grafana+Prometheus监控原理 |
性能需求指标 (分析性能指标到可操作层面) |
1.测试目的 2.测试范围 3.业务调研 4.测试环境调研 5.测试指标及测试数据 6.并发用户数 7.系统可扩展性指标 8.性能需求来源 9.性能需求应该包括什么 |
业务统计数据到场景的转化 (详解业务统计数据到场景的转化过程;) |
1.业务数据统计 2.业务模型 3.测试模型 4.对应场景设置 |
系统级性能监控分析优化 (以Linux为例,详解操作系统级别性能监控分析和优化;) |
1.操作系统架构图 2.全局监控分析 3.CPU监控分析与优化 4.Memory监控分析与优化 5.IO监控分析与优化 6.文件系统监控 7.网络监控分析与优化 8.进程间通信监控分析与优化 |
代码级性能监控分析优化 |
详解代码级别性能监控分析和优化; 【JAVA】 Java基本原理和JVM架构说明 Java调优工具集 Jstat jconsole jstack jmap jhat jvisualvm jmc jdb heapdump分析 ThreadDump分析 JAVA性能分析实例一 JAVA性能分析实例二 JAVA性能分析实例三 Metrics中的基础数据类型 Metrics的应用示例 |
应用服务器性能监控分析优化 (以nginx/tomcat为例说明应用服务器性能监控分析优化部分;) |
1.应用服务器架构 2.应用服务器监控工具 3.应用服务器分析优化 |
数据库级性能监控分析优化 (解析数据库级别性能监控分析和优化的思路;以MySQL为例。 如企业内训有其他需求,可提出) |
1.数据库架构图 2.数据库监控工具 3.SQL执行时间分析 |
前端性能分析 (对终端客户来说,前端的性能响应才是真实的感受。) |
1.CharlesProxy 2.HttpWatch 3.Safari开发者工具 4.Chrome开发者工具 5.FireFox开发者工具 |
系统调试工具 (以CentOS为例) |
strace trace/blktrace perf systemtap Flame Gragh(火焰图) |
系统可用性分析 (系统可用性是生产运维的重要指标,这一节主要描述如何做生产运维的可用性分析,提供模型计算方法和具体操作过程。) |
1.可用性计算公式(串行、并行) 2.N+M并行系统可用性计算公式 3.可用性分析方法 4.分层模型 5.可用性示例-网络拓扑 6.组件故障关系分析 7.计算示例 |
排队论在性能分析中的应用 (排队论在宏观性能分析和微观众性能分析中都有实用价值,但是企业要创建模型会比较费时费力费人,本章节主要描述如何创建针对性的排队论模型。) |
1.排队论概念 2.排队论公式 3.排队论实例 |
性能问题实例 | 性能问题实例分析,在没的项目中遇到的性能问题不同,用具体的实例对应到上述的完整性能分析思路。 |
性能方案 | 用真实的项目性能方案做示例解析。 |
性能报告 | 用真实的项目性能报告做示例解析。 |
性能综述 1.先看两个问题 2.性能测试与性能分析该有的范围 |
性能基本概念 (理解性能相关的基本概念及相应的使用方法。) 1.性能测试定义 2.性能指标 3.性能建模(业务模型、测试模型) 4.性能方案 5.性能场景 6.其他基本概念 • 响应时间 • 并发 • TPS • 虚拟用户 • 场景 • 测试策略 • 流控/超时 |
性能管理 (如何在性能测试过程中管理团队; 如何在各团队间协调) 1.性能组织结构(角色职责定义) 2.理解性能测试实施过程 3.Overview看系统性能 4.性能项目实施流程 5.性能瓶颈分析过程 6.执行过程控制 7.团队内协作 8.团队间协调 9.性能汇报 |
性能体系/方法论 (方法论只有用到具体的工作中才是实用的方法论。) 1.性能体系/方法论 2.方法论的关键 |
性能场景设计 (找到单业务/接口、混合业务/接口最大TPS; 找到系统最优配置; 找到系统可持续运行时长; 验证系统异常处理机制; 系统可靠性分析;) 1.场景设计逻辑 2.基准场景 2.1-单业务单用户场景 2.1-单业务多用户场景 3.容量场景 3.1-递增场景(混合业务,找到最大TPS) 3.2-配置测试场景 3.3-衰减测试场景 4.稳定性场景 5.异常场景(失效模式) 5.1-LB/HA场景 5.2-宕网卡/主机/应用场景 |
主流性能工具解析 (解析通用并且关键的性能工具实现机制) LoadRunner解析 Jmeter解析 参数化 关联 并发 事务 思考时间 平均值、标准方差 |
性能工具解析之其他性能测试工具 (解析其他常用性能测试工具) iperf sysbench FIO hdparm ab |
性能监控设计 (部署架构; 技术架构; 业务架构;) 1.全局监控 2.定向监控 3.监控设计 4.监控层次细化 |
性能监控实例 1.Grafana+Prometheus安装配置 2.Grafana+Prometheus监控原理 |
性能需求指标 (分析性能指标到可操作层面) 1.测试目的 2.测试范围 3.业务调研 4.测试环境调研 5.测试指标及测试数据 6.并发用户数 7.系统可扩展性指标 8.性能需求来源 9.性能需求应该包括什么 |
业务统计数据到场景的转化 (详解业务统计数据到场景的转化过程;) 1.业务数据统计 2.业务模型 3.测试模型 4.对应场景设置 |
系统级性能监控分析优化 (以Linux为例,详解操作系统级别性能监控分析和优化;) 1.操作系统架构图 2.全局监控分析 3.CPU监控分析与优化 4.Memory监控分析与优化 5.IO监控分析与优化 6.文件系统监控 7.网络监控分析与优化 8.进程间通信监控分析与优化 |
代码级性能监控分析优化 详解代码级别性能监控分析和优化; 【JAVA】 Java基本原理和JVM架构说明 Java调优工具集 Jstat jconsole jstack jmap jhat jvisualvm jmc jdb heapdump分析 ThreadDump分析 JAVA性能分析实例一 JAVA性能分析实例二 JAVA性能分析实例三 Metrics中的基础数据类型 Metrics的应用示例 |
应用服务器性能监控分析优化 (以nginx/tomcat为例说明应用服务器性能监控分析优化部分;) 1.应用服务器架构 2.应用服务器监控工具 3.应用服务器分析优化 |
数据库级性能监控分析优化 (解析数据库级别性能监控分析和优化的思路;以MySQL为例。 如企业内训有其他需求,可提出) 1.数据库架构图 2.数据库监控工具 3.SQL执行时间分析 |
前端性能分析 (对终端客户来说,前端的性能响应才是真实的感受。) 1.CharlesProxy 2.HttpWatch 3.Safari开发者工具 4.Chrome开发者工具 5.FireFox开发者工具 |
系统调试工具 (以CentOS为例) strace trace/blktrace perf systemtap Flame Gragh(火焰图) |
系统可用性分析 (系统可用性是生产运维的重要指标,这一节主要描述如何做生产运维的可用性分析,提供模型计算方法和具体操作过程。) 1.可用性计算公式(串行、并行) 2.N+M并行系统可用性计算公式 3.可用性分析方法 4.分层模型 5.可用性示例-网络拓扑 6.组件故障关系分析 7.计算示例 |
排队论在性能分析中的应用 (排队论在宏观性能分析和微观众性能分析中都有实用价值,但是企业要创建模型会比较费时费力费人,本章节主要描述如何创建针对性的排队论模型。) 1.排队论概念 2.排队论公式 3.排队论实例 |
性能问题实例 性能问题实例分析,在没的项目中遇到的性能问题不同,用具体的实例对应到上述的完整性能分析思路。 |
性能方案 用真实的项目性能方案做示例解析。 |
性能报告 用真实的项目性能报告做示例解析。 |