zoukankan      html  css  js  c++  java
  • 做性能测试准备需知

    前提:

    1. 一个理发店有三位理发师傅

    2. 每位理发师傅理一个发需要一小时

    3. 顾客都很忙,从进理发店起最多只等三小时(等待时间+理发时间),如果三小时后还没轮到自己理发,立马走人。

    我们需要考虑最佳用户数和最大用户数

    最佳用户数:

        理发店的最佳状态,理发店收入最多(理发师傅没有休息时间,一直在理发),顾客满意度最高(顾客随时到随时理,无需要等待)。在一个时间点来说,三个理发师傅服务于三位顾客,那么这个最佳用户数是三。

    最大用户数:

    理发店的最大承受状态,理发店收入最多(理发师傅没有休息时间,一直在理发),顾客的最大忍耐度(来的顾客等待+理发需要等上三个小时)。

    对于最大用户数,需要注意的两点:

    1. 在理发店里很大,可以容纳很多位顾客(大于9),总有一部分在这里等待了三小时而没有得到服务离开,不要把等待了三小而没有得到服务的顾客纳入最大用户数里。

    2. 假如理发店很小,最多只能容纳六位顾客,当第七个顾客来时,虽然,我们知道他只需要等待两小时就可得到服务(这个时间是他可以接受的等待时间),但由于理发店容量有量,这第七个顾客只有改天再来了。

     1. 性能测试的目的

      首先要知道客户的要求。

      性能测试按目的分以下几种

      1)客户有明确要求

       这是一个好的结果,这说明客户对性能测试有一定的了解,知道他们需要的系统要达到一个什么样的标准。如:系统要求同时满足100用户登陆,平均每个用户登陆时间不能超过5秒。这个需求很明确,当然也不排除一些不懂装懂的用户,提一些不现实的要求。

       不管怎么说,用户提要求了,这个比较容易,你可以对现系统做一次性能测试,至于,是通过优化系统还是增加硬件设备才能达到要求。就不是我们考虑的问题了。

       2)只是想知道目前系统性能(容量测试)

       可以把我们的目的就是求得最大用户数和最佳用户数。但是,这仍然是比较含糊的一个需求,我们需要对系统做出分析,找出系统的压力点。

       3)找出系统性能瓶颈

       这个同样需要分析可能对系统造成瓶颈的逻辑业务,然后才能进行性能测试。

       4)了系统在长时间的压力下性能状况(强度测试)

       这个一般验证系统的稳定性,因为系统一旦上线,就有可能会长期处在大用户的访问状态,可能以前没发现的一些问题就会暴漏出来。比较典型的就是内存溢出。

    2. 性能测试的环境

     

      确定了我们的测试目的,当然需要测试环境。这里的环境,我们需要考虑一下几点

     

      1)硬件环境

    我们需要了解被测服务器硬件配置,用于加压客户端的机子配置,CPU 内存  等

     

      2)软件环境

       我们需要了解被测系统的架构,前端、中间件、服务器(这里指运行系统软件服务器,如tomcat)、数据库,以及他们的部署位置。

       用于加压的客户端采用什么性能测试工具进行加压。

     

      3)网络环境

       网络环境很重要。在上面的几个目的中,除了找出系统性能瓶颈可以在广域网进行,因为这个目的可以不用设置太多的虚拟用户,只要找出系统哪个地方影响了整个系统的性能就行。 

       其他目的的测试都需要在,局域网进行,不然你压力工具所发送的请求都会卡死在网络的传输过程。

    3. 寻找系统的压力点

     

      我们需要对系统的哪个页面或业务进行加压。这个不是自己想出来的,需要与开发人员的沟通。系统的首页?系统的登录?还是系统的交易过程?各个业务的用户比例是多少?

      只有获得有效的性能需求,才容易寻找和定位压力点。

  • 相关阅读:
    107. Binary Tree Level Order Traversal II
    103. Binary Tree Zigzag Level Order Traversal
    102. Binary Tree Level Order Traversal
    690. Employee Importance
    1723. Find Minimum Time to Finish All Jobs
    LeetCode 329 矩阵中最长增长路径
    7.2 物理内存管理
    LeetCode 面试题 特定深度节点链表
    LeetCode 100 相同的树
    npm安装包命令详解,dependencies与devDependencies实际区别
  • 原文地址:https://www.cnblogs.com/zhouzetian/p/7068486.html
Copyright © 2011-2022 走看看