适合大型 Facebook 应用程序的服务器架构?

Ham*_*mza 3 mysql linux php web-server

我们由 3 名学生组成,我们创建了一个拥有超过 753,320 个活跃用户的 Facebook 应用程序,该应用程序托管在 LAMP 1&1 服务器上:

- AMD Opteron 1352 4 x 2,1 GHz
- 4 GB RAM.
- 2 x 750 Go (RAID 1 Hardware).
- Connection : 100 Mbps.
Run Code Online (Sandbox Code Playgroud)

此应用程序运行良好,没有任何问题。

我们正在准备一个新的应用程序,我们预计几个月后会有数百万的活跃用户。

应用信息 :

  • 用 PHP/MySQL 创建。
  • 每个用户每次使用最多可以运行 25 个查询。
  • 提供许多静态文件(图像、flash 文件、css、js)。
  • 此应用程序包含 8 个部分,例如游戏、礼物等...

我们想知道这个应用服务器的正确架构。

  • 我们需要多少台服务器来托管它?
  • 如果我们在此服务器上托管 php 文件:

    • 英特尔® 酷睿™ i7-920 处理器 4x2.66 GHz
    • 12GB 内存

MySQL 远程服务器,每个服务器上的静态文件具有相同的配置。

应用程序可以每天处理数百万个请求吗?

  • 您对此类应用程序有什么建议?有人能告诉我建议架构的详细信息吗?

提前致谢。

rma*_*ter 5

你得到的任何答案都将是疯狂的猜测。您确实需要对应用程序进行适当的负载测试,并在整个硬件和软件堆栈中使用真实的数据和使用模式。使用负载测试中的数字来制定可扩展性计划和成本估算 没有任何东西可以完美线性地扩展,尤其是在数据库层,因此即使您有硬数字,也有一些猜测,并且您可能会遇到“墙”在特定组件(例如数据库)中。从JMeter开始,它可以捕获 HTTP 会话以生成负载。商业工具的功能要强大得多,但也非常昂贵。