如何加速 Rails 应用在开发环境下的运行?

8

我正在开发一个非常庞大的Rails应用程序,使用Mongrel作为Web服务器在-e开发环境下运行速度非常慢。有没有办法稍微加快一下速度?因为我需要等待3-10秒才能重新加载页面。谢谢。

6个回答

35

现在我需要同样的补偿来治愈经过一个难眠的夜晚后劳累的手指 :) - r13
很遗憾,没有相关的插件 :) - user65663
加速!当我安装了它。谢谢。 - huacnlee
对于这个宝石要非常小心。我的团队使用这个宝石浪费了数十个小时。 - JZ.
这个 gem 的原理是什么?我在它的 readme 中似乎找不到简单的解释。 - lulalala
从16秒降到了3秒。谢谢! - AlienWebguy

1

让开发更快的最佳方法是安装名为active_reloadgem

要安装这个gem,您可以输入以下命令:

gem install active_reload

然后,在您的Rails项目gemfile中添加:

gem 'active_reload'

接着,重新启动服务器,您将会发现开发模式比以前快得多。


1
一个非常简单的方法来提高速度是在开发模式下启用类缓存...
在config/environments/development.rb中: config.cache_classes = true 这意味着Rails不会在每个请求上重新加载所有的models/controllers等,所以它会更快,但这意味着你必须停止/启动你的服务器才能看到除了views之外的任何更改。

我在Ubuntu桌面环境下,遇到了同样的问题。简单的页面加载需要超过2秒的时间,但是当我将config.cache_classes = true时,加载速度可以提高到300毫秒。但是问题出在哪里呢? - huacnlee

0

如果本地呈现操作需要3-10秒的时间,可能还需要进行一些优化。


0

我认为如果你在Vista上,当Mongrel绑定到所有地址(0.0.0.0)时会出现性能问题。

绑定到127.0.0.1或您的真实IP(mongrel -b 127.0.0.1 -p 3000 -e development),看看是否有所不同。

此外,如果您当前打开了连接密集型软件,例如具有许多打开连接的BitTorrent,则您的网络接口可能会达到最大连接数并减慢Mongrel的速度。关闭BitTorrent,然后甚至重新启动可能会解决您的问题。


不行。我用的是4GB内存的MBP。至于比特彗星,谢谢您,那很有道理。 - r13

0

MinGW 构建是否比从 ruby-lang.org 的一键安装程序中获取的构建更快? - Ev Dolzhenko
在单击页面上,您有“RC2”,它是mswin(慢速,稳定)和“技术预览”版本,它们是mingw(更快,更新)。 - rogerdpack

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接