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