- 浏览: 22038 次
- 性别:
- 来自: 南京
最新评论
同一脚本,响应时间不一样(回放VS场景压测)
回放过程中事务的响应时间3s左右,实际运行场景的时候平均响应时间只有0.6s。
为什么两者的差距这么大呢?
我们写脚本时用的“generator”模式下和运行场景在“Controller”模式下,两种不同模式下的响应时间比较。
在 generator 模式下 回放时, LR首先会对您的代码进行边编译边执行的处理方式(如果你把每个函数的处理时间打印出来就会发现函数处理时间非常的大~甚至占总运行时间的 80% 以上)。这样就导致响应时间变得很慢。
如果在 controller 模式下执行场景的时候,是首先对您的脚本进行编译,编译后才进行真正的事物处理,所以函数执行时间几乎可以被忽略,所以你看到的数据就是相对接近真实的响应时间了。
原来多出来的是编译时间
原文:http://bbs.51testing.com/thread-302647-1-1.html
回放过程中事务的响应时间3s左右,实际运行场景的时候平均响应时间只有0.6s。
为什么两者的差距这么大呢?
我们写脚本时用的“generator”模式下和运行场景在“Controller”模式下,两种不同模式下的响应时间比较。
在 generator 模式下 回放时, LR首先会对您的代码进行边编译边执行的处理方式(如果你把每个函数的处理时间打印出来就会发现函数处理时间非常的大~甚至占总运行时间的 80% 以上)。这样就导致响应时间变得很慢。
如果在 controller 模式下执行场景的时候,是首先对您的脚本进行编译,编译后才进行真正的事物处理,所以函数执行时间几乎可以被忽略,所以你看到的数据就是相对接近真实的响应时间了。
原来多出来的是编译时间
原文:http://bbs.51testing.com/thread-302647-1-1.html
发表评论
-
netstat当我们系统有问题的时候,我们不要急于去调查我们代码,这个毫无意义。我们首要需要看的是操作系统的报告。
2015-11-11 09:43 0http://blog.aliyun.com/896?spm= ... -
Code - 60990 Error: Two Way Communication Error: Function two_way_comm_post_mess
2015-09-14 10:28 692参考:http://www.blogjava.net/qile ... -
压力机疲劳
2015-09-10 16:31 6355个用户,使用一台压力机 5个用户,使用五台压力机 ... -
think_time
2015-09-09 15:56 0loadrunnerjava脚本,使用thinktime。 例 ... -
参数化
2015-09-07 18:40 474我这里写下参数类型为file的 Select Next R ... -
loadrunner 日志打印
2015-09-07 11:29 1010参考: http://bbs.51testing.com/th ... -
应用日志对压测的影响
2015-09-06 12:03 6061.AIX小机 压测CPU的sys请求过多 尝试调整日志级 ... -
利用loadrunner代理方式,录制手机客户端脚本
2015-09-02 15:57 2488需要保证手机终端和电脑在同一无线网络内,手机终端可以通过代理将 ... -
sql句柄用尽,在请求数据库全部报错
2015-08-21 14:10 0execute read lnsprdinfo error!s ... -
hessian接口公司逐渐用ssf去替代它了
2015-08-19 17:13 0hession接口脚本 import lrapi.lr; ... -
关联小结
2015-08-19 14:41 649关联:从响应消息中取出我们需要的字段值。 每一次执行时都会变动 ... -
403Forbidden 防火墙拦截
2015-08-18 14:35 11761.小压力跑场景不到1MIN,请求消息都返回失败。 报抓关 ... -
数据库分表性能测试
2015-08-17 17:11 771业务背景: 随着业务发展,单表的数据量已达实际应用推荐的极限, ... -
运行时报错:network buffer size带宽问题
2015-08-17 10:20 1020运行时报错: Action.c(8): Error -2660 ... -
杂待分类1
2015-08-10 18:11 01、进程与线程 进程是程序执行时的一个实例,即它是程序已经执行 ... -
回放慢(仅web协议,java正常)
2015-08-06 11:39 531我用loadrunner11.0录制B/S模式的 ... -
响应时间(max & min)
2015-08-04 20:46 1049MAX Response time java脚本, ... -
压测分析1
2015-08-04 20:24 0增加用户无法增加TPS,响应时间较长,系统资源消耗较少。 增加 ... -
This Vuser already started a transaction with the same name, and has not yet
2015-08-04 19:06 1118压测执行报错:This Vuser already start ... -
webservice 报文post传递
2015-07-23 11:41 1115http接口报文如何发送 ...
相关推荐
</action> <action name="testAction_anotherMethod" class="com.example.TestAction" method="anotherMethod"> <result name="success">/anotherSuccess.jsp</result> </action> </package> ``` 在这个例子中,...
Spring in Action CN.001<br>Spring in Action CN.002<br>Spring in Action CN.003<br>Spring in Action CN.004<br>Spring in Action CN.005<br>Spring in Action CN.006<br>Spring in Action CN.007<br>Spring in ...
实现同一账号不能同时登录的关键是保存每个用户的唯session,并检查用户是否已经登录,如果已经登录,则强制退出之前的session。 在实际应用中,我们可以根据具体情况选择合适的方法来实现同一账号不能同时登录。 ...
- 场景:适用于系统支持重复写入且对写请求响应进行了特殊处理的情况。 - 注意事项:确保写请求不违反唯一性约束。 3. **请求引流** - 工具:Apache mod_jk, mod_proxy, nginx proxy等。 - 场景:适用于将部分...
</action> </package> </struts> ``` 这里定义了一个名为 `login` 的 Action,当表单提交到 `/login.action` 时,Struts2 将会调用 `action.LoginAction` 类来处理这个请求。如果 `LoginAction` 返回 `"success"`...
Android提供了多种Intent类型,包括显式Intent(明确指定接收者)和隐式Intent(不指定接收者,基于Action、Data、Category等匹配)。在这个场景下,我们讨论的是隐式Intent,它允许任何注册了相应Intent Filter的...
Java 事件处理机制是构建图形用户界面(GUI)应用程序的核心组成部分,它允许程序对用户的交互做出响应。在本文中,我们将深入探讨如何利用Java事件处理机制实现录制和回放功能,这种功能常见于GUI测试工具中,用于...
在这个配置中,`<rule>`元素定义了一个重写规则,`^.*$">`匹配任何URL,`<conditions>`检查`HTTP_HOST`头是否等于主域名,如果是,则使用`<action>`将请求重定向到`www.example.com`,`redirectType="Permanent"`...
- **限制与应用场景**:由于非重用型Action不能被其他测试复用,因此在开发时需要考虑其通用性和可维护性问题。通常这类Action适用于那些流程简单、特定于某个测试用例的场景,比如登录、退出等操作。 - **优势**:...
然而,在某些场景下,我们希望在不进行任何用户交互的情况下就执行某些逻辑,比如在用户首次访问网站时自动加载一些数据或设置一些环境变量。这时就需要利用到中间JSP页面作为跳板,间接地触发Action执行。 ##### ...
当我们启动一个Activity时,可以设置Intent的action,使得多个Activity能够监听并响应同一action。 在Android中,当有多个Activity声明了同一个action的IntentFilter,系统会使用Intent的筛选机制来决定启动哪个...
</action> ``` 在此配置中,当请求路径为`/aFullAction`时,会调用`somePackage.someActionClass`类作为处理该请求的Action。其中,`name="someForm"`指定了与该Action相关的表单对象名称,`input="someJSP.jsp...
为了实现回放功能,我们可以创建一个定时器(TimerTask),按照时间间隔逐个播放保存的坐标点。每次在Canvas上绘制新的点,然后刷新界面,模拟出连续的书写过程。这样,用户就可以看到之前记录的笔画按顺序回放。 ...
2. **使用同步控制**:通过`synchronized`关键字对关键代码块或方法进行同步,确保同一时间只有一个线程可以访问。 3. **使用线程局部变量**:Java的`ThreadLocal`类可以为每个线程创建独立的变量副本,避免了线程...
**Action List** 是一组Action的集合,它主要用于管理与某一特定功能或场景相关的所有Action。通过Action List,开发者可以更方便地对多个Action进行统一管理,包括它们的状态、显示属性等。例如,一个“文件”菜单...
</action> ``` - **名称**:`name`属性用于指定Action的唯一标识符。 - **类路径**:`class`属性指定了处理请求的具体Action类。 - **结果**:`result`元素用于定义Action执行成功后转向的目标页面,本例中为`...
</action> </package> ``` 在上面的配置中,`default`包中的`global-results`配置了全局结果,这意味着在`user`包下的`hello` Action可以使用这个全局的结果配置。 通过以上的介绍,我们可以看出Struts2框架在...
`out_211_`可能是测试运行时的日志文件,包含了测试过程中的详细信息,如错误消息、响应时间和资源消耗等。 在实际操作中,我们需要根据业务需求调整脚本中的参数,例如调整并发用户数、请求频率等,以模拟不同级别...