你們在使用MongoDB的時候有沒有碰到過性能問題呢?這裏總結了MongoDB性能優化的五個步驟,但願可以有所幫助。mongodb
第一步:找出慢語句性能優化
通常來講查詢語句太慢和性能問題瓶頸有着直接的關係,因此能夠用MongoDB的性能分析工具來找出這些慢語句:架構
db.setProfilingLevel(1, 100);
第二步:使用explain分析工具
經過使用explain來對這些慢語句進行診斷。此外還能夠mtools來分析日誌。性能
第三步:建立索引優化
分析完以後須要建立新的索引(index)來提高查詢的性能。別忘了在MondoDB中能夠在後臺建立索引以免collections 鎖和系統崩潰。ui
第四步:使用稀疏索引來減小空間佔用spa
若是使用sparse documents,並重度使用關鍵字$exists,可使用sparse indexes來減小空間佔用提高查詢的性能。日誌
第五步:讀寫分離code
若是讀寫都在主節點的話,從節點就一直處在空置狀態,這是一種浪費。對於報表或者搜索這種讀操做來講徹底能夠在從節點實現,所以要作的是在connection string中設置成secondarypreferred。
小結
這些方法雖然可以起必定的做用,但最主要的目的仍是爲架構上的提高爭取點時間罷了。