【问题标题】:Should I use thin or unicorn on Heroku Cedar我应该在 Heroku Cedar 上使用薄的还是独角兽
【发布时间】:2012-04-05 05:51:27
【问题描述】:

我最近将我的应用“升级”到 Heroku 上的 cedar 平台。默认情况下,我使用thin 作为网络服务器。但我一直很想使用unicorn 进行并发并让我的dyno Dollar 成为父亲。但我担心使用 Thin 以外的东西会有一些问题。

有人对此决定有实际经验吗?


注意事项:

我想知道为什么每个人都不应该这样做

【问题讨论】:

  • 那是一篇不错的文章。感谢分享

标签: ruby-on-rails heroku thin unicorn


【解决方案1】:

更新 -- 3 个月后。

我在生产中使用 unicorn 已经 3 个月了,我非常高兴。我每个测功机使用 4 个独角兽工人。

您需要注意的一件事是内存消耗和泄漏。实际上,不是每个测功机拥有 512MB 的内存——而是将其除以 heroku 工作人员的数量。但请记住这一点——它已经大大节省了成本

【讨论】:

  • 感谢分享...我正在评估同样的举动,甚至做了一些benchamarking for my app。看起来独角兽肯定会节省一些成本。
  • 为了提高您的答案的价值,请提供使用 Unicorn 的说明或说明链接。因为我在想这就是我要做的!
  • 您知道使用全局变量是否有任何问题(例如,每个工作人员是否保留自己的全局变量,或者他们是否共享/破坏相同的全局范围)?这不是 MVC 中的常见模式,但我们确实在某些地方使用它。谢谢!
【解决方案2】:

没有理由不这样做 - 我在 Heroku 上使用 Unicorn 取得了很大的成功。

【讨论】:

    【解决方案3】:

    Heroku 刚刚写了一篇关于使用 Unicorn 的帖子:https://blog.heroku.com/archives/2013/2/27/unicorn_rails

    我现在就试一试,看来这是要走的路,无论是在性能方面还是在节省成本方面。

    【讨论】:

    【解决方案4】:

    如果您使用 Thin,并且您的代码不能很快清除请求,那么您就有麻烦了 - 由于 Heroku 使用随机路由,即使有免费的 dyno,请求也会堆积在阻塞的 dyno 上。如果您可以处理内存命中,使用 Unicorn 似乎更好,因为您的所有分叉不太可能同时收到缓慢的请求。它不能解决 Heroku 的随机路由问题,但应该会有很大帮助。

    此答案中的链接和解释:

    https://stackoverflow.com/a/19965981/1233555

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-10
      • 1970-01-01
      • 1970-01-01
      • 2011-09-30
      • 1970-01-01
      相关资源
      最近更新 更多