当我跑
rails server
要么
rake -T
或一些其他的轨道脚本,需要很多时间,大约1分钟.
确定究竟是那么慢的最好方法是什么?
如何提高速度?
Rails v是3.0.3运行槽ruby 1.9.2(RVM) – Linux
解决方法
这也是困扰我,因为我已经切换到Rails 3.
对于你的第二个问题:我通过挖掘框架发现,在实际开始执行其任务之前,初始化程序需要大约一半的时间进行简单的耙子或轨道调用.
如果将这些简单的时序线放在$GEM_PATH / gems / railties-3.0.3 / lib / rails / initializable.rb中的初始化程序调用循环(或者如果你喜欢的话)
def run_initializers(*args) return if instance_variable_defined?(:@ran) t0 = Time.now initializers.tsort.each do |initializer| t = Time.now initializer.run(*args) puts("%60s: %.3f sec" % [initializer.name,Time.now - t]) end puts "%60s: %.3f sec" % ["for all",Time.now - t0] @ran = true end
编辑:或对于铁路4.2.1:
def run_initializers(group=:default,*args) return if instance_variable_defined?(:@ran) t0 = Time.now initializers.tsort.each do |initializer| t = Time.now initializer.run(*args) if initializer.belongs_to?(group) puts("%60s: %.3f sec" % [initializer.name,Time.now - t0] @ran = true end
…你可以跟进会发生什么.在我的系统上,这是一个2.4 Core 2 Duo MacBook,初始化器大约需要7秒钟.
有一些在我的系统上特别慢.当我全部过滤一秒钟以下时,我的系统上得到这个结果:
load_active_support: 1.123 sec active_support.initialize_time_zone: 1.579 sec load_init_rb: 1.118 sec set_routes_reloader: 1.291 sec
我确定有人(是我吗?)需要一些时间才能开始优化.