性能测试:知识体系

1、进阶的三个层面

1.1能测

1.1.1性能测试过程

  • 性能需求分析
    • 客户需求
    • 开发过程相关文档
    • 相似项目的性能需求
    • 业界公认标准
      • A类标准
        • 4秒以内,用户可以接受
        • 4-9秒,30%用户离开
        • 8-10秒,60%用户离开
        • 超过10秒,90%用户离开
      • B类标准
        • 8秒,用户可以接受
        • 16秒,50%用户离开
        • 32秒,90%用户离开
    • 经验推断

一般1台双CPU、2G内存的服务器可支持的最大并发数不超过500个,要考虑系统本身占用和冗余情况

    • 历史数据分析

日志分析

  • 性能建模
    • 性能目标
      • 响应时间
      • 服务器吞吐量
      • 服务器资源利用率
      • 系统负载量
    • 80/20原则估算测试强度
    • 用户访问频率模式30-10-10法则
    • 用户行为
      • 哪些用户在什么时间段使用系统的哪些典型业务
      • 任务分布图
      • 利用UCML建模工作负载分布
  • 性能脚本设计
  • 性能测试执行
  • 性能监控数据收集
  • 性能测试机过记录与报告

1.1.2性能测试工具

  • 工具使用方法
  • 协议
  • 脚本编程

1.2会分析

  • 性能诊断分析
    • 性能测试结果图表分析
    • 识别性能瓶颈可疑点
    • 分析性能症状
    • 架构分层性能瓶颈诊断分析

1.3懂调优

  • 性能优化

协作调优

分层调优

2、技术体系

2.1性能测试工具

  1. 商业
    1. Load Runner、RPT
    2. WebLoad、NeoLoad
  2. 开源
    1. JMeter
    2. The Grinder
  3. 辅助工具
    1. HttpWatch
    2. MiniSniffer
  4. 工具应用技巧
  5. 脚本设计

2.2通讯协议

  1. HTTP/HTTPS、
  2. SOAP(WebService)、
  3. Socket
  4. AMF/Flex、
  5. Silverlight、
  6. FTP、
  7. POP3/SMTP、
  8. Tuxedo、
  9. Oracle
  10. 自定义

2.3测试环境搭建

  1. 环境对性能的影响
  2. 测试数据
    1. 通过生产数据库导入测试数据库
    2. 通过注册用户场景脚本设计执行生成
    3. 通过SQL语句\存储过程生成
    4. 测试数据生成工具:DataFactory

2.4性能监控

  1. 操作系统层监控
    1. CPU
    2. 内存
    3. I/O
    4. 网络
  2. Web服务器监控
  3. 应用服务器监控
  4. 数据库性能监控
  5. 监控工具
    1. 自定义
      1. 系统命令
      2. Shell脚本
    2. 商业监控工具
      1. HP SiteScope
      2. Spotlight
    3. 开源监控工具
    4. NMon
    5. Cacti
  6. 各项性能指标的含义

2.5基础技术

  1. 技术平台架构
    1. J2EE
    2. .NET
    3. LAMP
    4. Flex
  2. 操作系统
    1. Linux\Unix
    2. Windows
    3. AIX
    4. Solaris
  3. Web服务器
    1. Apache\Nginx
    2. IIS
  4. 应用服务器
    1. WebLogic、WebSphere、Tomcat
    2. IIS
  5. 数据库
    1. Oracle
    2. SQLServer
    3. DB2
    4. Mysql
  6. 网络、集群、负载均衡
    1. 网络带宽(1byte=8bits)

2.6性能诊断分析

  1. 诊断分析工具
    1. WireShark、HTTPWatch、DynaTrace
    2. HP Diagnos tics、JProfiler
    3. 数据库附带工具
    4. 自定义
  2. 加你诊断分析经验库
  3. 分层诊断分析
    1. 前端性能分析
      1. Web页面前端性能分析
      2. 手机客户端性能分析
    2. 服务器配置问题
      1. Web服务器参数配置
      2. 应用服务器参数配置
        1. 线程池、队列
        2. 数据库连接池
      3. 数据库
        1. 参数配置
        2. 设计问题
          1. 表结构
          2. 索引
          3. SQL
    3. 代码性能问题
      1. 内存泄漏分析
        1. JVM
        2. .NET CLR
      2. 线程、死锁、算法
    4. 缓存性能问题
    5. 日志分析
      1. LogParser
      2. Windows计数器分析:PAL
      3. Linux性能数据收集与分析:NMon
      4. GC日志分析:PMAT
      5. MySql:Slow Log
      6. Oracle:TVDXTAT\TRCA

2.7性能优化

  1. 资源优化
  2. 参数优化调整
  3. 代码设计
  4. 架构设计优化

3、能力建设

3.1培训体系

  1. 内部交流分享
  2. 沙龙、研讨会
  3. 外聘专家培训

3.2知识库

  1. 内部论讨、网站
    1. 性能测试相关书籍
    2. 各类技术性能优化相关书籍
  2. 教程、视频
  3. 案例

3.3项目实战

3.4沙盘演练

  1. 实验环境
    1. 基准测试
    2. 对比评测报告
    3. 性能优化理论的验证
  2. 实训平台
    1. 测试环境搭建
    2. 新手练习
    3. 典型案例

3.5人员规划

  1. 专业划分
    1. 性能测试诊断分析与优化
  2. 专项划分
    1. 性能监控研究员
    2. Web前端性能研究员
    3. 中间件性能研究员
    4. 数据库性能研究员
  3. 成熟度划分
    1. 初级性能测试工程师
    2. 中级性能测试工程师
    3. 高级性能测试工程师

4、工作体系

4.1性能测试工作指导书、方案、计划、报告

  1. 性能测试报告
  2. LoadRunner等工具产生的报告
  3. 性能分析报告
  4. 包含的要素
    1. 性能测试范围
    2. 性能测试环境
    3. 性能测试类型、方法、过程记录
    4. 性能测试指标及其符合度
    5. 性能瓶颈分析
    6. 性能优化方法

4.2CheckList

  1. 测试环境CheckList
  2. 性能测试设计与开发CheckList
  3. 性能瓶颈分析要点CheckList

4.3性能分析脑图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值