Corrigir problemas de conexão
Nesta página
Alertas de conexão tipicamente ocorrem quando o número máximo de conexões permitidas para um processo MongoDB foi excedido. Uma vez que o limite é excedido, nenhuma conexão nova pode ser aberta até que o número de conexões abertas caia abaixo do limite.
Condições de alerta
Você pode configurar as seguintes condições de alerta na página de configurações de alerta em nível de projeto para acionar alertas.
Connections
ocorre se o número de conexões
ativas com o host atender à média especificada.
Connections % of configured limit
ocorrerá se o número de conexões
abertas ao host exceder a porcentagem especificada.
Gatilhos comuns
Exceder o limite de conexão de um cluster do Atlas pode ocorrer por vários motivos. Diferentes camadas do Atlas têm limites de conexão diferentes; clusters de tamanho M0/M2/M5
, por exemplo, são limitados a 500 conexões e clusters de tamanho M10
são limitados a 1500 conexões. Camadas do cluster maiores têm limites de conexão mais altos. Diferentes aplicativos de acesso a banco de dados de dados têm diferentes maneiras de implementar opool de conexões , o que afeta o número de conexões abertas que o aplicação mantém em um determinado momento.
Corrigir o problema imediato
Clusters M0/M2/M5
Para resolver uma condição de alerta de conexão, reinicie o aplicativo que está fazendo conexões com o Atlas cluster no momento. Reiniciar o aplicativo encerra todas as conexões existentes abertas pelo aplicativo e permite que o Atlas cluster retome as operações normais.
Clusters M10+
Clusters do Atlas de tamanho M10
e maior podem utilizar a opção Testar failover primário . O procedimento Testar failover primário reduz o nó primário atual e aciona uma eleição, que descarta todas as conexões com o nó primário.
Observação
Se o seu aplicativo se conectar exclusivamente a um nó secundário, talvez seja necessário executar o procedimento teste de failover várias vezes para garantir que o nó secundário aplicável gire sua posição dentro do conjunto de réplicas e descarte suas conexões.
O teste de failover geralmente é a solução preferível, mas outra A solução possível é reiniciar o aplicativo que está fazendo conexões no momento com seu Atlas cluster. Reiniciar o aplicativo encerra todas as conexões existentes e permite ao cluster Atlas retomar operações normais.
Implemente uma solução a longo prazo
Os alertas de conexão geralmente são um sintoma de um problema maior. O emprego de uma das estratégias descritas acima resolverá o problema imediato, mas uma solução permanente geralmente requer uma das duas:
Como examinar seus aplicativos de banco de dados em busca de códigos de conexão defeituosos. Situações em que as conexões são abertas, mas nunca fechadas, podem permitir que conexões antigas se acumulem e acabem excedendo o limite da conexão. Além disso, talvez seja necessário implementar alguma forma de pool de conexões.
Atualizando para uma camada do cluster maior do Atlas que permite um número maior de conexões, se sua base de usuário for muito grande para sua camada do cluster atual.
Monitore seu progresso
Visualize o gráfico Connections para monitorar o número total de conexões para o cluster.
Monitore as conexões para determinar se os limites de conexão atuais são suficientes. Se necessário, atualize a camada do cluster.
Para saber mais, consulte Visualizar métricas do cluster.