Linux

適合大型 facebook 應用程序的伺服器架構?

  • February 11, 2012

我們是一組 3 名學生,我們創建了一個 Facebook 應用程序,現在擁有超過 753,320 個活躍使用者,應用程序託管在 LAMP 1 和 1 伺服器上:

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

此應用程序執行良好,沒有任何問題。

我們正在準備一個新的應用程序,我們預計幾個月後會有數百萬活躍使用者。

應用資訊 :

  • 用 PHP / MySQL 創建。
  • 每個使用者每次使用至少可以執行 25 個查詢。
  • 提供許多靜態文件(圖像、flash 文件、css、js)。
  • 此應用程序包含 8 個部分,例如游戲、禮物等…

我們想知道這個應用伺服器的正確架構。

  • 我們需要託管多少台伺服器?

  • 如果我們在此伺服器上託管 php 文件:

    • Intel® Core™ i7-920 處理器 4x2.66 GHz
    • 12GB 記憶體

MySQL 遠端伺服器,並且每個伺服器上的靜態文件具有相同的配置。

應用程序每天可以處理數百萬個請求嗎?

  • 您對這種應用程序有什麼建議?誰能告訴我建議架構的詳細資訊?

提前致謝。

關於 MySQL,

  1. mysqltuner是任何產品盒的必備工具。
  2. 慢查詢日誌將使您在通往性能更高的應用程序的道路上走得更遠。
  3. 打開正常日誌 (BRIEFLY) 可能是一件好事,然後對所有查詢執行 EXPLAIN 以確保您有正確的索引(無覆蓋、良好的基數等)
  4. 您是否在數據庫中保留會話?如果可以避免,請不要這樣做,但如果不能,請考慮使用 MEMORY 表。
  5. 在討論表類型時,請考慮每個表的實際使用情況。具有高讀/寫需求的事務表在 InnoDB 儲存引擎中可能會更好。主要是寫入讀取的表可能最好用作 MyISAM。你也登錄數據庫嗎?考慮這些表的 ARCHIVE 引擎。

引用自:https://serverfault.com/questions/182710