默认情况下,在每个采样器之前没有任何延时,这样不能很好的模拟现实生活中人们访问网页,因为现实生活中人们点击一个请求后,会有一定的时间,然后再点击下一个请求,JMeter提供了定时器来模拟这种行为。

定时器在采样器之前运行,并且在作用域内的每个采样器之前均运行一次,如果想要定时器只在某一个采样器之前运行,则把该定时器放在采样器的子节点即可。

1.Constant Timer(固定定时器)

如果想要采样器在运行之前都暂停相同的时间,则可以使用该定时器。

说明:Thread Delay:暂停时间,单位为毫秒。

2.Gaussian Random Timer(高斯随机定时器)

如果每个采样器执行之前暂停的时间符合高斯分布,则可以使用高斯随机定时器模拟这种情况,总的暂停时间为高斯分布值(-1到1)乘以Deviation+Constant Delay Offset时间,所以最终的时间为Constant Delay Offset-Deviation至Constant Delay Offset+Deviation。

说明:在实际的测试过程中,可以根据需要选择该定时器进行操作。

3.Synchinzing Timer

该定时器可以实现当设置的用户数同时到达时,同时对服务器进行请求,实现了loadrunner中集合点。

说明:Number of Simulated Users to Group by:当设置的用户数到达时同时对服务器进行并发。Timeout in milliseconds:如果设置的时间内没有达到上一个设置的用户数,则无论如何都进行并发操作。

4.Uniform Random Timer(统一随机定时器)

该定时器在每个请求之前暂停随机的时间,每个时间间隔都有相同发生的概率,总的暂停时间为0至Random Delay设置的值中的随机数加上Constant Delay Offset的值。

5.Constant Throughtput Timer

该定时器可以让JMeter以设置的吞吐量(TPS,这里是每分钟的请求数)对服务器进行请求。

Target thoughtput:设置的吞吐量,每分钟请求数。Calculate Throughtput:计算的范围。

this thread only:每一个线程都按照设置的吞吐量进行发送请求,如下:线程组中设置循环次数为2,定时器中设置目标云吞吐量为30/分钟,即没两秒一次,可以看到,每个线程,都是按照没两秒一次进行请求。

all active threads:设置的目标吞吐量在所有线程组下的所有线程下划分,每个线程组根据他上次延迟时间计算本次延迟时间,在这种情况下,其他线程组需要有相同设置的定时器,如下,线程组循环次数为1,两个定时器,每个定时器的目标吞吐量为60,即每个线程按照每分钟30(60/2),每两秒一次进行请求:

all active threads(threads):和上一个类似,只是根据任意线程上次运行时间延迟当前线程,如下:线程组循环次数均为1,定时器的目标吞吐量为60,两个线程每个线程每分钟30次请求,没两秒一次,每一次请求根据任一线程上一次的延时时间延时当前线程。

all active threads in current thread group:每一个线程运行时间根据当前线程组下的线程数进行划分,每一次延迟时间根据这个线程上次延迟时间进行延迟,如下:线程组循环次数为2,定时器设置目标吞吐量为60,每个线程每分钟30次,每两秒1次。

all active threads in current thread group(shared):和上一个类似,只是每个线程的延迟时间是根据任意线程的上一次延迟时间计算延迟时间。

Timer(定时器)的更多相关文章

  1. C#中WebService 的 Timer定时器过段时间后自动停止运行

    我用.net做的一个Timer定时器,定时获取短信并给予回复,但大概过了十几个小时以后,Timer定时器会自动停止,再发送短信就不能收到回复,需要在服务器中重新运行定时器才可以,请教各位! 我是在.n ...

  2. asp.net中Timer定时器在web中无刷新的使用

    最近在做一个项目的时候,web端的数据需要与数据源进行实时同步,并保证数据的准确性,当时,考虑到使用ajax异步刷新技术.但后来在网上查找相关资料时,发现这样做,太浪费资源了,因为ajax的提交请求不 ...

  3. JAVA Timer定时器使用方法(二)

    JAVA  Timer 定时器测试 MyTask.java:package com.timer; import java.text.SimpleDateFormat;import java.util. ...

  4. C#中Timer定时器的使用示例

    关于C#中timer类 在C#里关于定时器类就有3个: 1.定义在System.Windows.Forms里 2.定义在System.Threading.Timer类里 3.定义在System.Tim ...

  5. [Python 多线程] Timer定时器/延迟执行、Event事件 (七)

    Timer继承子Thread类,是Thread的子类,也是线程类,具有线程的能力和特征.这个类用来定义多久执行一个函数. 它的实例是能够延迟执行目标函数的线程,在真正执行目标函数之前,都可以cance ...

  6. 浅析linux内核中timer定时器的生成和sofirq软中断调用流程(转自http://blog.chinaunix.net/uid-20564848-id-73480.html)

    浅析linux内核中timer定时器的生成和sofirq软中断调用流程 mod_timer添加的定时器timer在内核的软中断中发生调用,__run_timers会spin_lock_irq(& ...

  7. 浅析linux内核中timer定时器的生成和sofirq软中断调用流程【转】

    转自:http://blog.chinaunix.net/uid-20564848-id-73480.html 浅析linux内核中timer定时器的生成和sofirq软中断调用流程 mod_time ...

  8. .net中 Timer定时器

    作者:feiying008 在开发一套视觉系统时,发现系统内存一直不断增加,直至系统内存爆满.一开始还以为是程序内存泄露,是图像操作算法写的有问题,但是,发现如果电机轴如果 不运行的状态下,每隔一秒进 ...

  9. 关于C#中Timer定时器的重入问题解决方法(也适用于多线程)

    项目中用到了定时器随着服务启动作定时任务,按指定的准点时间定时执行相关操作,但是在指定准点时间内我只想让它执行一次,要避免重入问题的发生. 首先简单介绍一下timer,这里所说的timer是指的Sys ...

  10. JAVA Timer定时器使用方法

    JAVA  Timer 定时器测试 MyTask.java:package com.timer; import java.text.SimpleDateFormat;import java.util. ...

随机推荐

  1. 第一章 为什么使用NoSQL

    1.1 关系型数据库的价值 1.1.1 获取持久化数据 1.1.2 并发 通过”事务“ 来控制,出错有“回滚”机制. 1.1.3 集成                共享数据库集成,多个应用程序将数据 ...

  2. resharper activate

    K03CHKJCFT-eyJsaWNlbnNlSWQiOiJLMDNDSEtKQ0ZUIiwibGljZW5zZWVOYW1lIjoibnNzIDEwMDEiLCJhc3NpZ25lZU5hbWUiO ...

  3. call()和apply()的认知

    apply:方法能劫持另外一个对象的方法,继承另外一个对象的属性.  Function.apply(obj,args)方法能接收两个参数 obj:这个对象将代替Function类里this对象 arg ...

  4. Python类(一)-实例化一个类

    #-*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" class Person(): n = 123 #类变量 def __init_ ...

  5. py编码终极版

    说起python编码,真是句句心酸.算起来,反复折腾两个来月了.万幸的是,终于梳理清楚了.作为一个共产主义者,一定要分享给大家.如果你还在因为编码而头痛,那么赶紧跟着我咱们一起来揭开py编码的真相吧! ...

  6. openstack resize 更新显卡驱动程序解决问题

  7. c++builder 程序升级到c++builder10Seattle

    c++builder 程序升级到c++builder10Seattle的一些技巧提示. http://community.embarcadero.com/blogs/entry/migrating-l ...

  8. 【开发工具】最强Git使用总结

    目录 必读材料 常用小结 Git操作流程 Git常用操作命令 - 代码提交和同步代码 Git常用操作命令 - 代码撤销和撤销同步 Git常用操作命令 - 其它常用命令 Git是分布式代码托管的标杆,这 ...

  9. MySQL5.7新特性

    MySQL5.7介绍 身处 MySQL 这个圈子,能够切身地感受到大家对 MySQL 5.7 的期待和热情,似乎每个人都迫不及待的想要了解.学习和使用 MySQL 5.7.那么,我们不禁要问, MyS ...

  10. 微信公众号php从0开发,包括功能(自定义菜单,分享)

    之前写的一篇微信公众号文章. 工作需要,进行此次调研,并记录开发过程. 开发目的,页面授权,页面获取用户头像,用户昵称 微信id, 分享页面. 微信订阅号 无法获取用户个人信息 写在记录前,公众号也是 ...