zoukankan      html  css  js  c++  java
  • 性能测试场景的学习:controller

    一. 什么是controller

    controller是一个核心组件:简单来说就是调用脚本,模拟用户的真实行为,对服务器产生压力,并且收集服务器资源使用情况,比如:TPS、响应时间、事务数、成功率

    二. 场景

    1. 手工场景(百分比模式)

    2. 面向目标场景

    三. 集合点

    1. 什么是集合点?

    模拟这种并发的操作

    集合点放在事务的外面(比如登录事务开始之前)

    在脚本里设置集合点

    controller中需要重新选择脚本

    百分比模式集合点置灰,需要切换到Vuser Group Mode

    2. 集合点的策略

    A:当所有用户的%X到达集合点时释放

    B:当所有正在运行的用户的%X到达集合点时释放

    C:当X个用户到达集合点时释放,也就是只要有X个用户到达集合点的时候,就会跑下面的操作,不会等其他用户都加载完再跑

    3. 集合点使用的场景

    跟你自己的需求来设置:一般用于秒杀,验证一瞬间的承受压力。和你设定的秒杀名额有关,比如秒杀名额只有10个,可以验证一下11个并发的时候,最后1个是不是失败了

    但是:并没有100%的并发,在我们日常的性能测试中,很少用的集合点。因为日常并发中已经对服务器产生了很大的压力,已经可以验证很多性能问题了,就不需要一定设置集合点

    设置集合点和不设置的区别:设置集合点,在释放的一瞬间的压力比不设置要大

    三. Load Generators

    1. 为什么要用Generators?

    (1) 8G内存,16C,为了减少一台机器的压力,才有多台机器来分担压力

    (2) 12306订票系统,分出来:华南、华北、华中,来自不同区域的压力

    2. 添加

    也可以从这里添加

    Ready表示已连接上

    3. 每台机器需不需要脚本

    (1) HTTP协议:不需要每台机器都有脚本,只要主控机上面有脚本就可以了

    (2) java vuser协议:每台机器都要有相同的脚本,文件夹目录和名称都要一直,jar都要上传(jdk版本一致)

    (3) LoadRunner版本最后一致,有时出现连接不上,但是高版本可以控制低版本的从机

    (4) 从机只要安装了LoadRunner之后,在电脑右下角看到小广播就可以了,不需要做其他设置

    4. 网络

    (1) 在做性能测试的时候,一定要在局域网做,同一个网段去做

    (2) 带宽:最好是1000兆带宽,买一个千兆交换机,现在一般都是千兆网卡了

    四. 场景设计模式

    手工场景:scenario模式、group模式

    (一) scenario模式

    scenario模式,是指所有脚本都使用相同的场景模式来运行,只需要分配每个脚本所使用的用户个数就可以

    scenario模式分为real-world schedule(真实场景模式)和basic shedule(基础模式)

    1. real-world schedule(真实场景模式)

    初始化的方式:

    增长方式:

    快增长

    慢增长

    指定运行次数(Runtime Settings):迭代5次,跑10个并发用户,一共跑了50个事务

    注意:迭代1次跑50个和迭代5次跑10个用户的区别是什么(直到完成这种模式)

    (1) 事务数是一样的

    (2) 产生的压力是不一样的

    2. basic shedule(基础模式)

    只能设置一次负载的上升和下降

    (二) Group模式

    当场景一开始就立即运行

    当场景运行后多少再运行

    当某个group结束后再运行

    一般在什么情况下使用这种group模式:

    (1) 也可以说是一种偷懒的模式,在做性能测试回归的时候,设计好这种场景,就可以把很多脚本跑一次,看有没有错误或TPS相应时间,有没有达到之前的要求

    (2) 或者下班之后,想在某个时间节点开始跑场景

    如何选择?

    是一个一个场景跑完之后,再添加另外场景来跑,还是一次把要跑的脚本都设定好,只要一次,直到所有的脚本场景都跑完?

    前者如果把所有的脚本都加进来,就变成混合场景了,不是某个脚本单个功能的验证

  • 相关阅读:
    Codeforces 787D. Legacy 线段树优化建图+最短路
    Codeforces 1051E. Vasya and Big Integers
    BZOJ3261 最大异或和
    BZOJ3531 SDOI2014 旅行
    洛谷P2468 SDOI 2010 粟粟的书架
    2018 ICPC 焦作网络赛 E.Jiu Yuan Wants to Eat
    HDU6280 From Tree to Graph
    HDU5985 Lucky Coins 概率dp
    (HDU)1334 -- Perfect Cubes (完美立方)
    (HDU)1330 -- Deck (覆盖物)
  • 原文地址:https://www.cnblogs.com/my_captain/p/12636870.html
Copyright © 2011-2022 走看看