zoukankan      html  css  js  c++  java
  • 性能测试技能树

    基础:
      完整的性能测试流程
        需求-计划-方案-环境搭建-用例设计-数据准备-场景设计-脚本开发-脚本执行-结果分析-问题反馈-性能调优-结果报告
      性能指标
        TPS,QPS,RPS,HPS,RT,VU,ERROR
      测试类型
        压力测试,负载测试,并发测试,spike测试,稳定性测试,破坏性测试,验收测试
    工具:

      jmeter工作原理
      常用的元件,插件
      jmeter如何设计脚本(线程组,各种请求,定时器,参数化,关联,断言)
      jmeter测试报告
      jmete设计典型性能测试场景

    其它工具
      wrk,ab,httpload,webbench,siege
    服务器/中间件
      JVM原理和配置、堆栈原理、GC原理、FullGc,OOM
      Tomcat配置、使用方法、启动参数配置
      Nginx配置、使用方法
        Dubbo服务注册、消息队列
    服务器硬件资源
      cpu,磁盘,网络,内存,load和利用率,IO读写,发包率丢包率
    linux性能监听命令
      lscpu,uptime,free,vmstat,mpstat,sysstat,netstat,iostat,pidstat,jstack,jmap
    数据库
      锁,索引,读写分离,分库分表,Nosql
    线程状态
      就绪(Runnable),运行(Running),阻塞(Blocked)
    可能的瓶颈点
      硬件,中间件,程序,操作系统,网络设备
      cpu,内存,磁盘,网络,jvm,线程池,jdbc连接池
    OOM异常信息
      OutOfMemoryError: Java heap space (堆内存不够)
      OutOfMemoryError: GC overhead limit exceeded (代码内存过大或死循环)
      OutOfMemoryError: PermGen space (perm内存不够)
      OutOfMemoryError: Direct buffer memory (线程栈太小)

    性能测试分析
      错误提示分析
        OutOfMemoryError: Java heap space (堆内存不够)
        OutOfMemoryError: GC overhead limit exceeded (代码内存过大或死循环)
        OutOfMemoryError: PermGen space (perm内存不够)
        OutOfMemoryError: Direct buffer memory (线程栈太小)
    指标监控分析
      cpu瓶颈
        响应时间慢
        空闲时间高(idle)
        系统占用高(sys)
        用户占用高(usr)
        运行队列长(r)
        load长期大于cpu个数
      内存瓶颈
        交换率过高(swap)
        系统cpu利用率很高
        内存溢出(OOM)
      磁盘瓶颈
        磁盘利用率高
        等待队列过长(avgqu-sz)
        等待IO的百分比过高(await))
        用于IO的时间比例过高(util)
        缓存命中率过低(buffer cache)
      JVM瓶颈
        fullgc频繁,考虑老年代内存是否太小
        YoungGc频繁,考虑年轻代内存是否太小
        YoungGc时间过长,程序中出现了大对象, 增加 -XX:PretenureSizeThreshold
        GC监控
         jstat -class 类加载统计
         jstat -compiler 编译统计
         jstat -GC 垃圾回收统计
         jstat -gccapacity 堆内存统计
         jstat -gccnew 年轻代垃圾回收统计
         jstat -gccold 老年代垃圾回收统计
         jstat -gcnewcapacity 年轻代内存统计
         jstat -gcoldcapacity 老年代内存统计
         jstat -gcmetacapacity 元空间内存统计
         jstat -gcutil gc整体统计
    分段排查定位分析
      服务器硬件瓶颈->网络瓶颈->应用瓶颈->服务器操作系统瓶颈(参数配置)->中间件瓶颈(参数配置,数据库,web服务器等)
    优化方法
      使用对象池减少对象创建
      增加本地缓存
      Nosql进行存储
      合并请求
      串行改并行
      同步改异步

    戳我>>>性能测试实战分析

  • 相关阅读:
    [leedcode 155] Min Stack
    [leedcode 154] Find Minimum in Rotated Sorted Array II
    [leedcode 153] Find Minimum in Rotated Sorted Array
    [leedcode 151] Reverse Words in a String
    [leedcode 150] Evaluate Reverse Polish Notation
    [leedcode 149] Max Points on a Line
    maven记录
    intelij idea常用功能介绍
    intelij idea设置和使用git
    intelij idea模板
  • 原文地址:https://www.cnblogs.com/Zfc-Cjk/p/11588062.html
Copyright © 2011-2022 走看看