0
如何打印每个文件需要多长时间?启动Rails 2项目时每个文件的打印加载时间
我正在考虑猴子补丁load
或Rails中的一些加载方法,但我对Rails 2内部的东西了解不多。
我希望这样的输出:
config/environment.rb ---> 60 s
config/development.rb ---> 30 s
config/initializers/some.rb ---> 20 s
任何出发点是真正的赞赏。
更新
我测量时间:
from = Time.now; p from.to_s + '----- env.rb'
to = Time.now - from; p "env.rb ---" + to.to_s
中的boot.rb文件更改env.rb
到boot.rb
,这些都是我的结果:
"Thu Feb 13 18:54:17 +0000 2014----- boot.rb"
"boot.rb ---0.001493"
"boot.rb ---0.941835"
Loading development environment (Rails 2.3.18)
"Thu Feb 13 18:54:19 +0000 2014----- env.rb"
"env.rb ---0.001378"
"Thu Feb 13 18:54:19 +0000 2014----- boot.rb"
"boot.rb ---0.001712"
"boot.rb ---0.02536"
"env.rb ---67.272745"
"env.rb ---70.847089"
我不知道为什么我我正在调用config/boot两次。从我看到的大部分时间都用在environment.rb中,但我删除了代码和时间保持不变,所以它应该与其他事情有关。
这等事不是捆绑的宝石,因为我有:
from = Time.now; p from.to_s + '----- env.rb'
# Be sure to restart your web server when you modify this file.
#
#
require 'rubygems'
require "bundler"
Bundler.setup
to = Time.now - from; p "env.rb ---" + to.to_s
这是印刷:
"env.rb ---0.001378"
使用ruby分析器像http://ruby-prof.rubyforge.org/ – phoet
谢谢,这些是我的结果https://gist.github.com/juanpastas/78772b34d299fd20b474。但我不确定如何从那里改进。 – juanpastas
我使用过'ruby /home/vagrant/.rvm/gems/ruby-1.8.7-p352/gems/ruby-prof-0.13.1/bin/ruby-prof config/environment.rb' – juanpastas