Linux
同一伺服器上的多個 MongoDB 實例
我們在 CentOS 6.3 上建立了一個MongoDB開發伺服器,並且能夠通過使用單獨的配置文件和 rc 腳本來分離不同的項目。現在我們正在考慮設置 MongoDB 生產環境。
我讀過不建議在生產中的同一台伺服器上託管多個 MongoDB 實例。 這是否意味著每個項目都需要自己的生產 MongoDB 環境?
這些項目不是很“大”,因此不需要大量資源,所以感覺就像我們通過給每個自己的主機來搶先一步。也許我們只需要擺脫 RDBMS 的世界。
我們將監控我們的開發伺服器以了解它的執行情況,但我正在尋找一些見解和您自己的一些個人經驗來補充我所讀到的內容。
Mongo/10Gen 建議不要在同一系統上執行多個 Mongo 實例的原因與資源可用性假設有關。該
mongod
過程假定它是系統的唯一主要租戶,並且並排執行兩個這樣的伺服器將導致整體性能比僅mongod
使用兩個數據庫執行一個更差。Mongo 非常有能力在單個
mongod
程序下執行多個數據庫。這些是離散的數據庫,就在一個主程序之下。每個數據庫都處理自己的身份驗證,這使您可以分離。如果您的產品需要不同的mongo 版本,您將執行多個mongod
程序。我沒有足夠的 RDBMS DBA 知道通過離散數據庫二進制程序分離產品背後的最佳實踐論點,所以我不能反駁/安撫/談論每一點。但據我了解,Mongo 環境中公認的做法是每個產品都有一個單獨的數據庫。