默认情况下,在每个采样器之前没有任何延时,这样不能很好的模拟现实生活中人们访问网页,因为现实生活中人们点击一个请求后,会有一定的时间,然后再点击下一个请求,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. python开发mysql:mysql安装(windows)&密码找回&存储引擎简介&库表的增删改查

    一,mysql安装 下载地址 https://dev.mysql.com/downloads/file/?id=471342 解压后,将目录C:\mysql-5.7.19-winx64\bin添加到计 ...

  2. python开发模块基础:collections模块&paramiko模块

    一,collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdic ...

  3. Hadoop入门介绍一

    Hadoop1.是一个由Apache基金会所开发的分布式系统基础架构.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储.2.Hadoop实现了一个分布式文件 ...

  4. Flask之邮件扩展

    4.4 Flask—Mail 在开发过程中,很多应用程序都需要通过邮件提醒用户,Flask的扩展包Flask-Mail通过包装了Python内置的smtplib包,可以用在Flask程序中发送邮件. ...

  5. sendMail在centos下的安装

    一.sendEmail介绍   SendEmail is a lightweight, command line SMTP email client. If you have the need to ...

  6. 判定元素是否刚插入到DOM树

    上接<这篇博文>,其应用于avalon的if绑定.如果一个节点还没有插入DOM树,那么avalon将延时对它进行扫描渲染,直到它再次插入到DOM树为止.由于CSS3 keyframe动画的 ...

  7. idata的各个类型

    idata是51系列单片机能识别的存储器类型之一,固定指前面0x00-0xff的256个字节的片内RAM,其中前128字节和data的128字节完全相同,只是因为访问的方式不同.idata是用类似C中 ...

  8. ajax请求参数中含有特殊字符"#"的问题 (另附上js编码解码的几种方法)

    使用ajax向后台提交的时候 由于参数中含有#  默认会被截断 只保留#之前的字符  json格式的字符串则不会被请求到后台的action 可以使用encodeURIComponent在前台进行编码, ...

  9. libevent源码深度剖析六

    libevent源码深度剖析六 ——初见事件处理框架 张亮 前面已经对libevent的事件处理框架和event结构体做了描述,现在是时候剖析libevent对事件的详细处理流程了,本节将分析 lib ...

  10. 【总结整理】pv、uv

    1.pv的全称是page view,译为页面浏览量或点击量,通常是衡量一个网站甚至一条网络新闻的指标.用户每次对网站中的一个页面的请求或访问均被记录1个PV,用户对同一页面的多次访问,pv累计.例如, ...