heroku - "high"交通轨道应用程序的托管问题

标签 heroku hosting ruby-on-rails-3.1 traffic high-traffic

我有一个关于托管高流量 Rails 应用程序的问题。问题是我有 3/4 年的 Ruby on Rails 应用程序经验,但我以前从未有过高流量网站。我真的很兴奋,因为这对我和我的同事来说是“下一个层次”。问题是我们没有使用 rails 应用程序来处理“高流量”的经验,首先让我在这种情况下定义“高流量”。

我们正在为荷兰领先的电信供应商之一和大约。每天的访问者约为 400.000 名用户。我们正在使用 ruby​​ 1.9.2 和 Rails 3.1 进行编程。我们正在使用设备进行身份验证处理。但我们正在寻找一个可靠的一方来托管这个应用程序。我们正在查看 Heroku,但我不知道我需要什么以及我需要多少 worker 、dyno 和/或专用数据库。我们需要流式传输电影,我们计划将它们托管在亚马逊 s3 存储桶上。

所以问题是我正在寻找有关 Heroku 和/或其他专业和可靠方的建议。关于 Rails 应用程序,我需要考虑什么吗?

谢谢!

最佳答案

根据 dynos 粗略计算它很容易。

dyno 是单线程的,因此如果您的页面需要 200 毫秒来呈现,您可以每秒呈现 5 个页面。您需要计算出这 400,000 个用户每秒将创建多少页。然后您就知道每秒请求多少页以及单个 dyno 可以处理什么。因此,您只需增加 dyno 计数,直到满足每秒用户请求数。

例如 1 dyno @ 200ms = 每秒 5 页
2 dynos @ 200ms = 10 页每秒

等等等等。这只是一个棒球场数字,因为还有其他因素,如 DB 性能等,但请放心,Heroku 适合这种类型的场景,因为它非常简单,因此添加更多 dyno 以增加吞吐量。

您将需要为任何长时间运行的事件使用工作线程,例如发送电子邮件等,如果您的应用程序使用它们,第三方可能需要时间来响应和处理队列。

一旦你超过 20Gb 数据库,那么你需要使用一个专用数据库,从客户看来,每月 200 美元的入门数据库不会让他们在托管成本方面出汗。

我错过了什么吗?如果我真的回到我身边

关于heroku - "high"交通轨道应用程序的托管问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7745030/

相关文章:

java - 如何虚拟主机一个 war 文件

testing - 在 Rails3.1 中仍然收到弃用警告

ruby-on-rails - 没有路由匹配 { :action= >"edit", :controller= >"users"}

ruby-on-rails - 带@global gem 的 Ruby/RVM - bundle 运行失败,显示 `require' : cannot load such file — bundler (LoadError)

node.js - Socket io 和 Node 在本地工作但在 heroku 上不起作用

node.js - 当我们有来自多个客户的多个请求时处理请求

php - $_SERVER ['document_root' ] 返回/htdocs 而不是/public_html

ubuntu - 如何在 Heroku 上使用 PhantomJS 2.5.0 Beta

macos - 在 mac os 上托管 tomcat

ruby-on-rails - 数组 :Class 的未定义方法 `where'