zoukankan      html  css  js  c++  java
  • 怎样开展一个性能测试

    一、需求分析:性能测试目的、测试功能/接口/场景/类型

    TPS、响应时间RT、并发用户 ----测试目标不能自己定。(必须)

    1.查看日志,按天分析TOP系列的URL(用户常用的功能或者接口),确定功能场景;相同秒、分钟、小时数最大的请求数(awk),确定最大并发数;每秒每个URL有多少次,确定单个URL的最大并发。

    分析日志的工具:AWstats、Webalizer Analog、Deep Log Analyzer、Web Log Explorer

    日志分析的峰值+30%制定为性能测试初步目标。最大TPS,混合TPS,单个TPS都需要测试。上线前需要测出最大TPS。

    新系统的测试目标:①.需求或者开发。②.同公司的同类系统做参考。

    2.通过性能预警可以保证上线系统性能问题。

    举例:以TPS作为预警:线上TPS为200,预警值为190,如果预警频繁表示需要扩容(加机器或者优化)

    举例:以平均响应时间RT作为预警:比如平均响应时间是2s,2s是预警值,所有小于2s的请求之和在95%以上就没有问题;如果小于95%,说明有5%以上的响应超过2s,那么需要做性能优化。

    3.CPU、内存、IO、网络;数据库:SQL执行效率和有无慢查询;JVM:GC情况,FGC间隔次数、FGC时间;中间件队列,排队时间,缓存命中率。

    通过以上权重分配分数,给优化建议,但是权重比例待定。

    淘宝、电商→全链路压测:所有流程,浏览、支付、评价等流程,在线上全链路压测。

    流量复制工具:tcpdump;流量复制:把线上的请求复制一份到线下。线上数据复制到线下要做数据脱敏:敏感数据剔除掉。

    二、测试计划、用例设计,了解系统构架。

    三、了解系统构架,线上服务软硬件配置,从而申请性能测试环境。软硬件至少单节点与线上保持一致。

    硬件:CPU、内存、磁盘、网络、磁盘分区、磁盘阵列、文件句柄数、tcpip配置等等

    软件:JDK版本(最末位版本号)、操作系统、软件版本(配置文件)、数据库、JVM、缓存、其他等

  • 相关阅读:
    Codeforces 1316B String Modification
    Codeforces 1305C Kuroni and Impossible Calculation
    Codeforces 1305B Kuroni and Simple Strings
    Codeforces 1321D Navigation System
    Codeforces 1321C Remove Adjacent
    Codeforces 1321B Journey Planning
    Operating systems Chapter 6
    Operating systems Chapter 5
    Abandoned country HDU
    Computer HDU
  • 原文地址:https://www.cnblogs.com/wangguoyuan-09/p/7832456.html
Copyright © 2011-2022 走看看