【问题标题】:Ruby/Rails running slow on Windows 7Ruby/Rails 在 Windows 7 上运行缓慢
【发布时间】:2012-04-07 21:41:40
【问题描述】:

我知道这是一个常见的问题主题,但我找不到任何似乎可以回答我的问题的问题,这似乎与该主题的大多数问题有所不同。

我是 Ruby 和 Ruby on Rails 的新手,所以请记住这个问题。每当我通过我的 IDE (Aptana) 或在 Windows 命令屏幕中运行 bundle、rails 等命令时,它们实际上需要一分钟才能执行。捆绑安装可能需要 20 秒才能开始将任何内容打印到屏幕上,r​​spec 命令可能需要 40 秒才能开始,然后需要 6 秒才能运行测试(对于这种情况来说是适当的时间)。 Rails 服务器可能需要 40 秒才能启动。

并非总是如此,而是在更新 gems、安装更新的东西、获取 Aptana IDE 的过程中,它受到了粉丝的欢迎。

任何想法如何将扳手从引擎中取出?谢谢。

【问题讨论】:

  • Ruby 1.9.3 与 1.9.2 相比有一些重大的启动改进,并且 ruby​​ 1.9.3-p125 修复了一些关键的 Windows 性能问题 IIRC

标签: ruby-on-rails ruby windows-7 rspec bundler


【解决方案1】:

我不是 Win7 专家,但我建议检查您的系统内存和 CPU 使用率。看看有没有瓶颈。

【讨论】:

  • 这是个好主意,但我认为瓶颈更可能是磁盘而不是 CPU 或内存。
【解决方案2】:

我正在使用 Ruby 1.9.3p392、Rails 3.2.13。该项目连接到一个mysql数据库。

  • 在 Window 7 上尝试过 - 服务器需要 10 秒才能启动,呈现登录页面需要 1 分钟以上。
  • 在 virtualbox 上的 ubuntu 12.10 虚拟机上尝试过 - 是最差的两倍
  • 在 VMWare 播放器上的 ubuntu 12.10 虚拟机上尝试过 - 好得多,几乎与 Windows 7 相当。

所以我硬着头皮设置了一个双引导 linux-mint 系统,问题就消失了。所以问题出在一些甚至是虚拟机都依赖的低级系统api上。

使用 Windows 也存在其他问题,例如许多 gem 不是为 Windows 编译的(如 therubyracer 和 imagemagic),因此您需要跳过循环才能使它们工作。

因此,总而言之,忘记用于 RoR 开发的 Windows。但说真的,如果 RoR 对 Windows 更友好,我敢肯定它会更受欢迎。在这个过程中我几乎放弃了,而且我不得不时不时地在 Windows 和 Linux 之间切换,这对我来说仍然是一个真正的痛苦。

【讨论】:

    【解决方案3】:

    另外,至少,请确保您运行的是最新版本的 Bundler。直到最近它的版本是 1.0.x。它最近升级到了 1.1,现在是 1.1.3,主要变化是在 gem 之间遍历依赖关系树需要多长时间。

    另外,在某些情况下,我也使用 Windows 7 for Ruby。我还发现安装“thin”作为 Rails Web 服务器( C:\ gem install thin )将比默认的 WEBrick 服务器执行得快得多。

    如果你做到这两点,我想你会注意到性能提升。

    就您的测试而言,如果您使用的是 RSpec..这就是野兽的本性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-28
      • 2017-09-04
      • 2016-09-28
      • 2018-11-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多