我正在建立一个供个人使用的小型网站来测试我公司制作的API.我的老板想要一个我们可以进入网站的网站,使用GET或POST请求表格,以及发送请求的次数.他希望记录请求,每个请求的时间以及所有请求的平均时间.
有没有办法测量使用Ruby的GET或POST请求的响应时间?
我查看了Net :: HTTP库,但没有看到任何返回时间的内容.
有网站已经这样做了吗?他们需要有一个GUI,所以非技术人员可以使用它.如果没有,我计划使用一个运行脚本的简单表单,将该脚本的输出写入文本文件或电子表格,然后将其发送给用户.
还有其他建议吗?(一个漂亮的AJAX外观可能很好用,但可能需要数据库存储.每次运行10000个请求,这可能会很大.
ire*_*ick 23
正如评论中所提到的,ruby有一个基准模块
require "benchmark"
time = Benchmark.measure do
#requests
end
Run Code Online (Sandbox Code Playgroud)
为什么Net :: HTTP会关心响应时间?那不是它的工作.
在您的请求用于Time.now设置开始和结束时间之前和之后:
start_time = Time.now
# ...do request...
elapsed_time = Time.now - start_time
Run Code Online (Sandbox Code Playgroud)
如果要平均,请将elapsed_time值相加并除以测试次数:
total_time += elapsed_time
# ... do some stuff...
average_time = total_time / num_of_iterations
Run Code Online (Sandbox Code Playgroud)
时间测量到微秒,这应该足以满足您的需求.
你是自己的界面,因为这是一个完全不同的主题,并将构成一本书.
而且,顺便说一下,你欠我一小时的工资,为你做一部分工作.
| 归档时间: |
|
| 查看次数: |
8338 次 |
| 最近记录: |