zoukankan      html  css  js  c++  java
  • jmeter并发测试

    用jmeter测试高并发,老大要求是在0秒内1000个用户同时登录

    想到了2种方法

    1.在线程组里直接设置

    2.设置集合点

    简单来理解一下,虽然我们的“性能测试”理解为“多用户并发测试”,但真正的并发是不存在的,为了更真实的实现并发这感念,我们可以在需要压力的地方设置集合点,每到输入用户名和密码登录时,所有的虚拟用户都相互之间等一等,然后,一起访问。

    注意:

    1.JMeter里面的集合点通过添加定时器来完成。

    2.Synchronizing timer仅作用于同一个JVM中的线程。

    集合点的用法:

    Number of Simulated Users to Group by:集合多少人后再执行请求(也就是执行的线程数)

    注意:等同于设置为线程租中的线程数,一定要确保设置的值不大于它所在线程组包含的用户数。

    Timeout in milliseconds:指定人数 多少秒没集合到算超时(设置延迟时间以毫秒为单位)

    注意:如果设置Timeout in milliseconds为0,表示无超时时间,会一直等下去。
    线程数量无法达到"Number of Simultaneous Users to Group by"中设置的值,那么Test将无限等待,除非手动终止。

    如果希望定时器仅应用于其中一个sampler,则把该定时器作为子节点加入,如下图

    关于集合点的概念大神写过(https://blog.csdn.net/zjq001x/article/details/53107159

    关于这两点的区别以及好坏,研究了一下午总结了以下几点

    并发:其实是一个理想状态下的概念而已,一般是指在一段时间内到达的访问量

    集合点:是将到达集合点函数的线程Hold住,等到符合集合点数量时再释放,但是,你的CPU是有限的,所以不可能真正做到同时释放,另外线程间切换也需要时间

    总的来说:使用集合点,能大致达到真实并发情况,使用线程组也可以将等待时间设置0,只不过对测试机器性能消耗较大。(个人理解,仅供参考)

     注意:线程等待时间为0的条件下,随机性更大一些,不像设置集合点那样规律明显

    每天进步一点点,一点点

  • 相关阅读:
    3/10
    2/10
    福大软工 · 最终作业
    福大软工 · 第十二次作业
    Beta 冲刺(7/7)
    Beta 冲刺(6/7)
    Beta 冲刺(5/7)
    Beta 冲刺(4/7)
    Beta 冲刺(3/7)
    Beta 冲刺(2/7)
  • 原文地址:https://www.cnblogs.com/yang2017812/p/9486793.html
Copyright © 2011-2022 走看看