Você escolheu o MongoDB como seu banco de dados de aplicativo e provavelmente já tem muitos dados de produção em seu banco de dados. Agora, você precisa fazer uma grande mudança em seu aplicativo. Como você faz os testes para garantir que a nova versão do seu aplicativo se comporte bem com seus dados de produção?
Os dados de produção são sempre infinitamente mais variados do que seus dados de teste e exercitam mais casos extremos, consequentemente levando a mais bugs. Não é recomendado exportar dados de produção para seu ambiente de teste devido a problemas de política, privacidade e segurança. Por outro lado, é bastante difícil e caro identificar e testar bugs em produção. Então, como você garante que a nova versão do seu aplicativo funcione bem com os dados de produção? Aqui está o que recomendamos no ScaleGrid:
4 etapas para atualizar o MongoDB para produção
-
Segurança em primeiro lugar
Nossa primeira preocupação é a segurança dos dados de produção. Portanto, nunca exportamos dados de produção para nosso ambiente de teste ou teste. O que temos é “pseudoprodução” – este é um ambiente idêntico à produção – mesmo tamanho, mesmas restrições de segurança da produção. No entanto, é efêmero e só vive durante a duração do teste.
-
Clone seu cluster MongoDB de produção
Usamos o recurso "Clone" do ScaleGrid para criar um clone pontual do banco de dados de produção. Em nuvens como a AWS, o recurso Clone usa instantâneos do EBS, portanto, a operação de clonagem tem pouco ou nenhum impacto no banco de dados de produção. Isso nos dá um ambiente de banco de dados de “pseudoprodução” que possui todos os mesmos recursos da produção – mesmos dados, mesmos tamanhos de máquina, mesma segurança, mesma configuração de cluster etc.
-
Executar testes extensivos
Executamos um extenso conjunto de testes para garantir que a nova versão do aplicativo não cause problemas com os dados. Quando estamos satisfeitos, derrubamos o ambiente de “pseudoprodução”.
-
Atualize seu ambiente de produção
Quando estivermos satisfeitos com nossos testes, vamos em frente e atualizamos nosso aplicativo em produção. Dependendo do recurso, você também pode fazer upgrade dele apenas para alguns de seus clientes, também conhecido como teste A/B.
Então, quais outros problemas você tem ao testar atualizações de aplicativos com o MongoDB? Você tem ferramentas, técnicas ou sugestões que gostaria de compartilhar? Adoraríamos ouvir de você!