検索

ホームページ  >  に質問  >  本文

Mongodbの最適化?

現在のシナリオは次のとおりです。マシンのパフォーマンスは、CPU が非常に優れています。 i7の型番を忘れてしまいました。 nb は、クエリ中に CPU 操作がほとんどないことを意味します。 htop からご覧ください。しかしメモリは良くなく、8gしかなく、将来メモリは確実に増設されます。ハードディスクも普通のメカニカルディスクなので後日交換しますが、それはまた後ほど 今感じていることは、クエリデータが10万件を超えるとioにボトルネックが現れ、ioがロックされてメモリが枯渇してしまうということです。使用量も充実しています。その結果、他の操作が滞り、影響は小さいものの、Web 上のページの待ち時間が長くなってしまいます。
現在、次の最適化が行われています:
1. Linux スタック サイズ値を調整します。 ###2、インデックスを作成します。
3. 最近 (1 か月間) 変更されていない、人気のあるデータを別のコレクションに入れます。
上記の 3 つの最適化により、状況は改善されます。ただし、クエリに複数の条件が含まれる場合、インデックスが無効になるという問題がまだあります。状況は依然として同様に悪い。
つまり、非常に矛盾しています。どうすればうまく対処できるでしょうか?では、同じ構成の別のサーバーがある場合、シャーディングなどの運用でこの状況は解決できるのでしょうか?
###ありがとう###

黄舟黄舟2778日前836

全員に返信(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 のプロダクション ノートを参照して、それに応じて設定することができます。

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

    MongoDB が大好きです!楽しむ!

    返事
    0
  • キャンセル返事