Apache-2.2

MongoDB PHP EC2 設置配置

  • November 1, 2012

我是 Web 開發和伺服器設置的新手。我正在尋找有關設置生產系統的一些建議或教程連結。現在,我有一個伺服器(Ubuntu、Apache、MongoDB 和 PHP)。它接收一個請求,PHP 查詢 Mongo,然後 PHP 發出請求的數據。我如何使它與更多伺服器一起工作?我讀到您可以創建一個由一個主節點和兩個從節點組成的集群,它們作為執行 Mongo 的獨立伺服器工作,但它們也執行 PHP 嗎?還是主要是唯一執行 PHP 的?我已經閱讀了 Mongo 網站上的一些文件和來自 10gen 的某個人的影片,但它們面向似乎已經了解這些東西的人,我不知道,需要從頭開始。

如果有人可以幫助我了解 PHP(充當我的 API)在這些集群中的位置,那將不勝感激!提前感謝您的幫助!

當您向外擴展時,您通常會拆分組件。你最終會得到這樣的東西(這些不是標準名稱,你也不必這樣做,但這很常見):

  • 應用伺服器(Linux、Apache、PHP)
  • 數據庫伺服器(Linux、MongoDB)

您需要多少個取決於您的應用程序需求。在 MongoDB 方面,對於生產,您至少需要執行一個副本集。這將至少構成一個主節點、一個輔助節點和一個仲裁器(請參閱文件,但作為快速指南,主節點和輔助節點應該相同並且通常是專用主機,仲裁器沒有數據並且是輕量級的,可以執行在共享主機上)。

應用程序伺服器將接受來自客戶端的請求,無論是人類還是其他呼叫您的應用程序的應用程序。該應用程序將使用 PHP 驅動程序通過網路與 MongoDB 副本集進行通信(而不是在本地,這可能是您迄今為止一直在做的事情)。

最終,如果您繼續增長,您可能需要擴展到一個分片的MongoDB設置。從 PHP 的角度來看,唯一的區別是您與 mongos 程序對話,而不是直接與副本集對話。不過,在這種情況下,這聽起來對您來說很困難,所以請注意它,但在不久的將來應該沒有必要。

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