当我听说与 1.9.2 相比,Ruby 1.9.3 将使具有很多很多“require”语句的应用程序(例如 Rails 应用程序)的启动时间减半时,我感到很兴奋。不幸的是,升级后,我的 Rails 2.3.14 应用程序的启动时间和以前一样糟糕。执行“脚本/控制台”后需要 50 秒才能得到提示。在那段时间里,它执行了 1499 个“require”语句。
我的问题是,如何让它启动得更快?
我在 environment.rb 文件的顶部使用了以下代码片段来记录所有 require 语句:
module Kernel
def require_new(fn)
puts "#{Time.now.strftime('%Y-%m-%d %H:%M:%S')} #{fn}"
require_old(fn)
end
alias_method :require_old, :require
alias_method :require, :require_new
end
最佳答案
恕我直言,Ruby 1.9.3 开箱即用非常慢。您可以做些什么来提高性能:
如果您使用的是 p0,请应用 falcon 补丁。在这里你会发现如何: https://gist.github.com/1688857 包括调整环境变量的好处。
获取新鲜出炉的 Ruby 1.9.3-p125 http://www.ruby-lang.org/en/news/2012/02/16/ruby-1-9-3-p125-is-released/我查了一下,第一印象是性能大于p0。
像评论中提到的用户 shingara 一样升级 Rails。
关于ruby-on-rails - Rails 2.3 + Ruby 1.9.3 启动速度仍然很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9324837/