MongoDB生產環境效能和可靠性注意事項

來源:互聯網
上載者:User

本文是翻譯MongoDB Manuel中的MongoDB Production Notes一節內容。這節內容重點關注生產環境中影響效能和可靠性的各種注意事項,值得正在部署MongoDB的工作者們關注。本文詳細描述了影響MongoDB,特別是生產環境的關鍵系統配置。以下是本文。

  安裝包

  確保你安裝了最新的穩定版本。這是瞭解最新版本的最佳場所,即使你稍後選擇從包管理器安裝。

  生產環境始終使用64位版本。32位版本是為測試和部署環境準備的,不適於生產環境部署,因為它只能儲存2GB以內的資料。瞭解更多內容請查看32位限制。

  32位版本的存在是為滿足非正式環境的使用情境。

  作業系統

  MongoDB發行版目前可用於Max OS X,Linux,Windows Server 2008 R2 64位版,Windows 7(32位及64位版),Windows Vista,以及Solaris平台。

  注意:在可能的情況下,MongoDB使用GNU C庫(glibc)。MongoDB要求版本至少在glibc-2.12-1.2.el6以避免早先版本一個已知的Bug。為了效果最佳請使用至少2.13版本。

  並發

  早先版本的MongoDB中所有寫操作都集中使用執行個體中的唯一一個讀寫鎖。從2.2開始,每個資料庫開始具有一個獨立的讀寫鎖,這使得一個資料庫可以並發讀,同時每個資料庫有了獨立的寫控制。查看並發頁瞭解更多資訊。

  日誌

  MongoDB使用預先寫日誌到磁碟日誌的辦法來保證MongoDB能夠快速從崩潰或其他嚴重錯誤中恢複寫操作。

  為了保證mongod能夠從崩潰中恢複並繼續處於可用狀態,你應該啟用日誌。查看日誌頁以瞭解更多內容。

  網路

  使用可信任網路環境

  始終在可信任環境中運行MongoDB,並啟用網路原則禁止未知機器,系統和網路訪問。猶如依賴網路訪問的任何一個敏感系統一樣,你的MongoDB環境應該只為指定的,需要訪問的系統開發,例如應用程式伺服器,監控服務及其他MongoDB組件。

  注意:預設情況下認證功能未開啟,mongod推斷自己處於可信任環境中。如有必要你可以啟用安全認證模式。

  查看安全章節的內容以瞭解更多資訊。特別是:

  ●配置選項

  ●防火牆

  ●為MongoDB配置Linux iptables防火牆

  ●為MongoDB配置Windows netsh防火牆

  對於Windows使用者,在Windows上部署MongoDB時考慮Windows Server TCP技術文章中的內容。

 

  串連池

  為避免單個mongod或mongos執行個體串連資源越負荷,請確保用戶端維護了合理數量的串連池配置。

  connPoolStats資料庫命令能夠返回一個分區叢集裡mongos和mongod執行個體中當前資料庫開啟串連的資訊。

  硬體考量

  MongoDB的設計是基於相容大多數硬體考慮,幾乎沒有特別的要求或限制。MongoDB的核心組件能夠運行於小端位元組優先的硬體,主要是x86/x86_64處理器上。用戶端類庫(例如驅動)在大端優先或小端優先系統上都可以運行。

  硬體需求和限制

  能夠讓MongoDB最有效率地啟動並執行硬體應該包含以下特性:

  分配了足夠的記憶體和CPU

  猶如對於所有軟體一樣,更多的記憶體和更快的CPU時鐘頻率對於效能很重要。

  基本上,資料庫並非受限於CPU。因此,增加核心數量雖然有協助,但不會提供顯著的回報。

  使用固態硬碟(SSD)

  MongoDB使用SATA SSD能得到很好的效果和很好的性價比。

  在足夠經濟的情況下請使用SSD。傳統硬碟也可能很有效率,但SSD對於隨機IO訪問的良好支援更符合mongod的資料更新模型。

  傳統硬碟通常也是個好的選擇,因為使用更昂貴的硬碟來提高隨機IO效能並不是那麼有效(只能是每次2倍)。使用SSD或增加RAM的容量可能對於提升IO更有效率。

  避免使用遠程檔案系統

  遠程檔案儲存體系統可能對MongoDB造成效能問題。查看遠程檔案系統瞭解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.