【问题标题】:Ruby version for production用于生产的 Ruby 版本
【发布时间】:2011-05-10 13:06:03
【问题描述】:

多年来,我一直在使用 Ruby on Rails on Ruby 1.8.7 (Enterprise Edition) 进行开发。并且有1.9.2最新版本。

使用 1.9.2 可以获得哪些好处?编码支持怎么样(我听说过一些问题)?它更快吗?是不是更稳定?等等

目前我即将开始一个新项目。所以我正在考虑在生产中使用 1.9.2。

【问题讨论】:

  • 我使用 Ruby 1.9.2,然后开始使用get errors,因此切换到 1.8.7。所以我的意见是最好继续使用 Ruby 1.8.7。
  • 我不使用 Windows,所以也许它在 *nix 上更稳定?
  • 您应该考虑在 Windows 上迁移到 ruby​​ 1.9.2-p136。
  • 如果您不使用 Windows,如果您知道这些问题,请使用 1.9.2。他们的数量更少。
  • 使用 1.9。去吧!事实上,1.9.3 即将在几个月内推出。现在的计划好像是今年七八月份。

标签: ruby-on-rails ruby


【解决方案1】:

我在生产环境中使用 1.9.2 的经验非常好。对于一个新项目,尤其是。对于 Rails 3,我不会推荐其他任何东西。 1.9 中的 Unicode 支持实际上消除了很多很多的编码问题,而且 1.9.2 的速度要快很多,而且稳定性是一个梦想。

当然,如果您要将项目迁移到 1.9.2,您需要确保在开始之前拥有良好的测试覆盖率,因为其中存在更改、弃用等。

如需真正深入了解编码问题以及 1.9.2 中的变化,请阅读 this article by Yehuda Katz.

【讨论】:

    【解决方案2】:

    如果您开始一个新项目,1.9.2 有很多优势:编码支持、原生线程和纤程、更一致的 API。

    但它确实改变了一些事情,所以要注意。最近让我印象深刻的一个:Object#methods 在 1.8 中返回字符串,在 1.9 中返回符号。

    What is the difference between Ruby 1.8 and Ruby 1.9

    【讨论】:

      【解决方案3】:

      我现在在 1.9.2 上运行一些项目,只要你用 rvm 武装自己,你应该会很好。在这一点上给我带来麻烦的唯一问题是缓慢的需求,它将在一个月左右的 1.9.3 中修复。

      请注意,如果使用 REE,您也会失去 REE 的优势(例如写时复制的友好性),因为不清楚 REE 何时会出现在 YARV 上(如果有的话)。

      【讨论】:

        猜你喜欢
        • 2016-09-14
        • 2021-02-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-06-24
        • 1970-01-01
        • 2020-12-16
        • 1970-01-01
        相关资源
        最近更新 更多