托管“高”交通轨道应用程序的问题

时间:2011-10-12 18:53:19

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

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

我们正在为一家领先的荷兰电信供应商和大约一家公司开发铁路应用。每天访问者将约为400.000用户。我们正在使用ruby 1.9.2和Rails 3.1进行编程。我们正在使用设计进行身份验证处理。但我们正在寻找一个可靠的方来主持这个应用程序。我们正在寻找Heroku,但我不知道我需要什么,以及我需要多少工人,dyno和/或专用数据库。我们需要播放电影,我们计划将它们托管在亚马逊s3桶上。

所以我正在寻找有关Heroku和/或其他专业和可靠派对的建议。有关导轨应用需要考虑的事项吗?

谢谢!

1 个答案:

答案 0 :(得分:9)

在dynos方面粗略地解决这个问题很容易。

dyno是单线程的,所以如果你的页面需要200ms才能渲染,你可以每秒渲染5页。您需要确定这400,000个用户每秒会有多少页面。然后你知道每秒要求多少页面以及一个dyno可以处理的内容。因此,您只需增加dyno计数,直到达到每秒用户请求数。

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

等等。这只是一个球场公园的数字,因为会有其他因素,如数据库性能等,但放心Heroku适合这种情况,因为它很容易所以添加更多的动力来增加通过。< / p>

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

一旦你超过20Gb的数据库,那么你需要使用一个专用的数据库,这听起来像是来自客户端,每月200美元的起始数据库不会让他们因托管成本而疲惫不堪。

我错过了什么吗?如果我确实回复了我,