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

Jak otestovat své upgrady aplikace MongoDB?

Zvolili jste MongoDB jako databázi aplikace a pravděpodobně již máte ve své databázi mnoho produkčních dat. Nyní musíte ve své aplikaci provést zásadní změnu. Jak postupujete při testování, abyste se ujistili, že se nová verze vaší aplikace chová dobře s vašimi produkčními daty?

Produkční data jsou vždy nekonečně rozmanitější než vaše testovací data a využívají více okrajových případů, což následně vede k většímu počtu chyb. Kvůli problémům se zásadami, ochranou soukromí a zabezpečením se nedoporučuje exportovat produkční data do vašeho testovacího prostředí. Na druhou stranu je poměrně obtížné a nákladné identifikovat a testovat chyby ve výrobě. Jak tedy zajistíte, aby nová verze vaší aplikace dobře fungovala s produkčními daty? Zde je to, co doporučujeme ve ScaleGrid:

4 kroky upgradu MongoDB na produkční verzi

  1. Bezpečnost především

    Naší první starostí je bezpečnost a zabezpečení produkčních dat. Nikdy tedy neexportujeme žádná produkční data do našeho pracovního nebo testovacího prostředí. To, co máme, je „pseudoprodukce“ – to je prostředí, které je identické s výrobou – stejná velikost, stejná bezpečnostní omezení jako produkce. Je však pomíjivý a žije pouze po dobu trvání testu.

  2. Klonujte svůj produkční MongoDB Cluster

    Funkci ‚Klon‘ ScaleGrid používáme k vytvoření klonu produkční databáze v určitém okamžiku. V cloudech, jako je AWS, používá funkce klonování snímky EBS, takže operace klonování má malý nebo žádný dopad na produkční databázi. To nám dává „pseudoprodukční“ databázové prostředí, které má všechny stejné funkce jako produkce – stejná data, stejné velikosti strojů, stejné zabezpečení, stejná konfigurace clusteru atd.

  3. Spusťte rozsáhlé testy

    Provádíme rozsáhlou sadu testů, abychom zajistili, že nová verze aplikace nezpůsobí problémy s daty. Jakmile jsme spokojeni, zboříme „pseudoprodukční“ prostředí.

  4. Upgradujte své produkční prostředí

    Jakmile jsme s testováním spokojeni, pokračujeme a upgradujeme naši aplikaci v produkci. V závislosti na funkci ji možná budete chtít upgradovat pouze pro některé své zákazníky, a.k.a., A/B testování.

Jaké další problémy máte s testováním upgradů aplikací pomocí MongoDB? Máte nástroje, techniky nebo návrhy, o které byste se chtěli podělit? Rádi bychom od vás slyšeli!


  1. MongoDB - Vytvořte dokument

  2. Mohu použít Tornado+ Celery+ RabbitMQ + Redis?

  3. Redis ukládání řetězců jako vyrovnávacích pamětí na některých OS, ne na jiných?

  4. MongoDB $first Aggregation Pipeline Operator