sql >> Databáze >  >> NoSQL >> MongoDB

MongoDB pracuje pomalu při zatížení

To také závisí na druhu dotazů, které zadáváte. Zkontrolujte prosím, zda existují níže uvedené body -

  • je mnoho agregačních dotazů? Jaký druh struktury sbírky máte, tj.
  • je tam hodně vnořených polí?
  • Je to jediná instance nebo sada replik? Zkuste vložit sadu replik s čtením a zápisem do jiného uzlu.
  • Vracejí dotazy data z více kolekcí?
  • Zkontrolujte, zda vaše instance vykazuje chyby na stránce pro kolik % operací?
  • Zkontrolujte v protokolech operace s vysokým nscanned nebo scanAndOrder během období vysokého uzamčení/fronty a podle toho indexujte.
  • Zkontrolujte ve svých dotazech operátory náročné na CPU, jako jsou $all, $push/$pop/$addToSet, a také aktualizace velkých dokumentů, a zejména aktualizace dokumentů s velkými poli (nebo velkými poli vnořených dokumentů).
  • pokud je vaše databáze náročná na zápis, mějte na paměti, že v jednu chvíli může zapisovat pouze jeden procesor na databázi (kvůli vláknu, které má zámek pro zápis). Zvažte přesun části těchto dat do vlastní databáze.

To je málo věcí, které časem snižují výkon. Zde jsem popsal nejběžnější případy použití, ale prosím zkontrolujte tento příspěvek pro nějaké další poznatky.



  1. Ověření MongoDb pomocí Hibernate OGM

  2. Nelze se připojit k MongoDB (MongoLabs) prostřednictvím klienta C#

  3. mongomapper geoprostorový dotaz „v rámci“.

  4. Jak naplnit vnořené entity v mongoose?