如何准确地确定加载模型所需的时间?
我想对加载模块所花费的时间进行基准测试(find_by_id(234)调用)。
另外,我如何跟踪加载页面所需的时间,我知道在运行rails服务器时我得到了这些信息,但这是在调试模式下,我想要生产速度基准,可能吗?
为了快速检查,我强烈建议您查看Benchmark 。
一个例子是:
require "benchmark" time = Benchmark.measure do a.find_by_id(234) end puts time
但是对于生产水平基准测试,我会查看New Relic。 它们几乎可以为您提供所有想法,提供令人难以置信的基准测试。
他们有一个免费的开发者模式:
你可以使用这个gem: https : //github.com/igorkasyanchuk/benchmark_methods
没有这样的代码:
t = Time.now user.calculate_report puts Time.now - t
现在你可以这样做:
benchmark :calculate_report # in class
然后打电话给你的方法
user.calculate_report
我强烈建议您阅读性能测试的Rails指南 。 这是对rails内可用内容的一个很好的概述。 如果您想要自动化测试,可以进行代码更改并查看即时结果,这非常棒。
对于生产服务器基准测试, New Relic可能会做您想要的一切。