zoukankan      html  css  js  c++  java
  • 5.jmeter集合点技术

    jmeter集合点实战

    集合点简介

    小时候早上到操场集合做早操

    • 我们怎么实现真正的并发?

      • 并发:指的是系统中正在操作业务的用户,在jmeter中,称为线程数。
      • jmeter中的各个线程(用户)在进行业务操作中的顺序存在一定的随机性。
      • 不能保证用户同一时间做同一操作,所以需要集合点
    • 集合点目的

      • 让各个线程(用户)步调一致,对系统进行加压
      • 达到模拟真实并发访问的效果
      • 比如抢购,公务员报名,抢票,只能在那个时间点可以操作

    创建集合点

    jmeter里面的使用的是同步定时器
    图 23

    注意:在jmeter中一定要注意,元件和作用域的概念
    错误演示:同步定时器放在线程组中--全局范围

    图 24
    原计划只并发课程操作,结果全部集合并发了,5个一起,5个5个一起了
    图 25

    正确示范:
    5个用户,一秒启动一个用户
    图 27

    调整位置,放到课程签到操作的请求中,同步定时器相当于前置
    图 26
    同一时间,集合完毕,点击课程签到按钮

    集合点使用

    • 参数设置
      • Number of Simulated Users to Group by

        • a.每集合够多少个模拟用户(线程)后发起一次测试请求;
        • b.如果设置为0,等同于设置为线程组中的线程数
        • c.确保设置的值不大于它所在的线程组包含的用户数(线程数)
          一直集结线程而不发出测试请求,直到超时(如果设置了的话)
      • Time out in millisecs--所有用户的集合超时

        • a.超时时间,即多少毫秒后同时释放已集结的线程,发送测试请求
        • b.设置为0,Timer将等待线程数达到了“Number of Simulated Users to Group by”中设置的值才释放
        • c.大于0,那么如果超过Time out in millisecs中设置的最大等待时间后还没有达到“Number of Simulated Users to Group by”中设置的值,Timer将不再等待,释放已到达的线程
          场景1:
          线程组为5,集合用户数为6
          图 28
          一直不发出签到请求,一直等待
          图 29

    场景2:
    线程组为5,集合组用户数为2,落单一个,最后一个找不到伴,一直等
    两个为一组并发,但是最后一组,找不到伴,一直等
    图 30

    场景3:
    线程组为5,集合用户数为6,超时时间为5秒
    图 31
    超时后直接并发

    场景4:
    线程组为5,集合组用户数为2,超时时间为5秒
    图 32
    最后一组(落单一个)等待超时5秒后释放请求

    • 参数--注意事项:
      • 如果设置Time out in millisecs为0,且线程数无法达到“Number of Simulated Users to Group by”中设置的值,那么Test将无限等待,除非手动终止
      • 这个无法达到的情况有如下几种:
        • a.设置的值大于线程数量,这样就永远无法达到了;
        • b.最后一批线程数不够集合点数目;
  • 相关阅读:
    HDU 1102 Constructing Roads
    HDU 1285 确定比赛名次。
    最小生成树 HDU 各种畅通工程的题,prim和kru的模板题
    HDU Jungle Roads 1301 最小生成树、
    并查集小结(转)
    HDU hdu 2094 产生冠军 拓扑排序 判定环
    模运算(转)
    拓扑排序(主要是确定环和加法) HDU 2647 Reward
    HDU 1372 Knight Moves 简单BFS
    用计算机模型浅析人与人之间沟通方式 (一)如何谈话
  • 原文地址:https://www.cnblogs.com/xiehuangzhijia/p/14966071.html
Copyright © 2011-2022 走看看