2010-05-22 40 views
4

我们目前正在开发一个高流量的Facebook应用程序。所有的流量将在一个月内,其中有500,000到1,000,000的预期用户。在那个月之后,游戏结束,我们有一个赢家 - 所以这个应用程序将被存档。主办高流量的Facebook应用程序(游戏)

我们目前正计划在rails上开发红宝石应用程序,并寻找可以处理流量的主机选项。问题不在于用户,而在于高峰值:我们将在短时间内每天发出大约500,000次请求(可以说在最坏情况下的3分钟内)

我们预计500,000到1,000,000用户在时间下午1点(GMT + 1时区)出现高峰,大部分(最多80%的用户)将发送大部分请求。请求是从6月11日到11月7日 - 此后,应用程序/游戏已关闭/结束。

我们目前正在开发一种积极的缓存机制 - 目前我们正在考虑2或3个小应用程序/ web服务,以处理负载。

负载被分布如下: 一个)主应用程序,高速缓存的数据(11个屏幕,200K各自) b)中投票:每天直到下午1点00分(时区GMT + 1) - 每个用户投票用约10k的数据发送,高并发峰值!

问题:

  • 没有任何具体应用的配置,它值得推荐?
  • 是否有任何东西可以推荐?

谢谢!

+0

推荐招ServerFault;问题与编程无关。 – amphetamachine 2010-05-22 14:50:22

回答

3

那么如果你提供的内容全部被缓存了,那么你就很好,几个nginx实例可以提供几乎无限制的静态页面。

投票听起来不太好,因为它应该发生在同一时间。 高并发负载的新热度似乎是node.js,但我没有任何经验。

虽然我认为投票实际上不会做太多的事情,所以不要做完整的铁轨堆栈调用尝试只写一个完成投票的小机架方法。这可以节省您加载ActionController,ActionView以及如果您在普通SQL和ActiveRecord中将您的投票写入数据库。