【问题标题】:is mod_rails or Phusion Passenger finally the answer to Ruby on Rails Deployment?mod_rails 或 Phusion Passenger 最终是 Ruby on Rails 部署的答案吗?
【发布时间】:2010-10-25 08:22:51
【问题描述】:

我从一些书中读到,Phusion Passenger 是轻松部署 Ruby on Rails 的答案。但是朋友说先是Apache+一堆Mongrel,然后是lighttpd,然后是nginx,现在是Passenger,好像没完没了……

他还说他使用了使用Passenger的dreamhost,有时他看到他的请求没有被处理。

所以我想知道,Passenger 是否是 RoR 部署的最终答案?你是否使用它并使用“ab”命令来测试站点是否运行良好?

【问题讨论】:

标签: ruby-on-rails ruby passenger mod-rails phusion


【解决方案1】:

简短的回答:是的。

长的答案:yeeeeeeeeeeeeeeesssssssssssssssss P>

说真的,Phusion Passenger 和 Ruby 企业版几乎消除了将 Rails 应用程序投入生产的所有痛苦。以前的方法,包括运行一套 Mongrel,需要围绕启动、停止和回收由乘客透明处理的侦听器进程或通过简单的 Apache(或 nginx)配置选项进行大量设置。并且 REE 的互补垃圾收集器意味着分叉一个新的侦听器使用更少的内存,并且启动速度更快(在乘客的“智能”生成模式下)。

编辑:@srboisvert 提出了一个很好的观点;乘客不是 RoR 部署的最终答案,但目前它是我最喜欢的。有一天,在解决了很多工程难题之后,主流的 Ruby 可能会从使用多进程模型托管 RoR 转向单进程模型,这将比使用Passenger 更容易管理。

【讨论】:

  • +1 表示长答案:yeeeeeeeeeeeeeeessssssssssssssss。我已经笑了,而且还在笑。
【解决方案2】:

这是迄今为止最好的解决方案。我开始使用 FCGI 进行部署,这很痛苦。然后是杂种,情况好多了。然后是 mod_rails,它好多了。

还有很多很酷的大型应用程序正在迁移到 mod_rails,包括一些 37signals,所以你知道这很好。

我将引用 DHH 的一句话来结束:

Phusion 的一体式解决方案 乘客

一旦你完成了令人难以置信的 安装简单,你得到一个 Apache 既充当 Web 服务器,又充当负载 平衡器、应用服务器和 进程观察者。您只需加入 您的应用程序和触摸 tmp/restart.txt 当你想 弹起它然后砰的一声,你起来了 正在运行。

但不知何故乘客的消息 下沉的速度有点慢。 已经有很多大网站了 跑掉它。包括 Shopify, MTV、Geni、Yammer,我们将搬家 很快就超过了第一个 Ta-da List,然后 希望剩下的 37 个信号 此后迅速套房。

因此,尽管仍有理由 运行您自己的自定义多层设置 手动配置的部分,只是 就像有人回避 mod_php 对于他们的细节,我想 我们终于决定默认了 回答。不需要的东西 你要真正考虑第一个 部署 Rails 应用程序。 一些刚刚好的东西 盒子。即使那个盒子是共享的 主持人!

总之,Rails 不再难 部署。 Phusion 乘客 非常简单。

(via)

【讨论】:

    【解决方案3】:

    是的,它是最简单、最快和最有效的解决方案。 在最近的版本中解决了诸如 soap4r 等 gem 的许多问题之后,Passenger 现在是部署问题的答案。

    我们在平衡的环境中运行 Apache/mod_rails,HAProxy 位于 2 台服务器前。它比我们之前使用 Mongrel/Aapache 的设置更可靠。

    控制很容易

    • Apache 中运行的乘客进程数量
    • 每个应用程序运行的乘客进程数量
    • 并且所有这些都无需调整大量配置文件(如 mod_proxy、Apache)。
    • 设置一个虚拟主机并将 3 行添加到您的 Apache 配置中基本上足以让它运行

    马特

    【讨论】:

      【解决方案4】:

      最终答案?没有什么是最终的答案。

      我会说乘客是当前的答案。

      【讨论】:

      • 除非你在玩“谁想成为百万富翁”的游戏,否则没有什么是最终的答案。
      【解决方案5】:

      是的。自从几周前发布 2.2.0 以来,我一直在 Apache 前面运行 Nginx/Passenger 来解决仍然需要 PHP 的任何问题。尤其是 Ruby 企业版,它接近了我所说的“完美”。

      【讨论】:

        【解决方案6】:

        我猜现在人们会坚持使用 mod_rails 很多年。模块真的很好。配置非常简单。很难用更好的解决方案代替它。类似于 mod_php。唯一缺少的关键组件:Windows 端口。

        【讨论】:

          【解决方案7】:

          在某些情况下(企业等),JVM 也是一个不错的选择。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2015-08-31
            • 2023-03-29
            • 2010-11-23
            • 2015-07-16
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多