首頁  >  問答  >  主體

Mongodb優化?

現在場景是:機器的效能是cpu很nb。 i7忘記型號。 nb是說幾乎在查詢的時候cpu的操作很少。透過htop來看。但記憶體這塊不行,只有8g,之後一定會增加記憶體。硬碟也是普通機械盤,之後也會換,但是那是之後的事情,現在能感覺的是,當查詢資料大於10萬的情況,瓶頸出現在io上,io被鎖了,內存在佔用量也是滿高的。導致其他操作很卡,雖然這個影響小,但是體現在web方面就是頁面等待時間長。
目前做瞭如下的最佳化:
1,調整linux stack size數值。
2,建立索引。
3,把一些數據比較熱門,近期(1個月)沒有修改的數據單獨一個集合。
透過上面三個來優化,情況也好點。但還是會出現問題,當查詢的時候多條件時,索引就無效了。情況還是一樣糟糕。
所以,很矛盾。怎麼才能很好的處理?那如果還有一台一樣設定的伺服器那透過分片之類的操作能不能解決這種情況呢?

謝謝

黄舟黄舟2736 天前801

全部回覆(2)我來回復

  • 巴扎黑

    巴扎黑2017-05-17 10:04:32

    mongoDB,最佳化可以 1. 加記憶體; 2. 加更多記憶體; 3. 插滿主機板最大記憶體。

    可以考慮換 redis + mysql 方案。

    回覆
    0
  • 某草草

    某草草2017-05-17 10:04:32

    供參考。

    1、先找出那些業務CRDU操作比較慢,然後圍繞這些操作來優化。

    2、整體來說,加記憶體/換SSD都是比較常見的做法。也有一些常見的參數設定來優化,可以參考MongoDB的production notes,並對照著來設定。

    https://docs.mongodb.com/manu...

    Love MongoDB! Have fun!

    回覆
    0
  • 取消回覆