He estado trabajando en una aplicación React que se conectaría a MongoDB Atlas con Mongoose . Usando nodemon y webpack para la recarga en caliente, se volvería a conectar a Mongo en milisegundos cada vez que hubiera una recarga. Estuvo funcionando bien así durante meses, luego, de repente, comenzó a tardar más de 20 segundos en conectarse en cada recarga , lo que ha aumentado significativamente el tiempo de desarrollo.
No puedo entender qué causó que esto comenzara a suceder y cómo solucionarlo. Cualquier consejo sería muy apreciado.
Nota: Mi dirección IP ya se ha incluido en la lista blanca.
const db = "mongodb+srv://<username>:<password>@cluster0-omitted.mongodb.net/<dbname>?retryWrites=true&w=majority" const connectDB = async () => { try { console.log('Attempting to connect to MongoDB...'); await mongoose.connect(db, { useNewUrlParser: true, useCreateIndex: true, useFindAndModify: false, useUnifiedTopology: true, }); console.log('MongoDB connected...'); } catch (err) { console.log(err.message); process.exit(1); // Exit process with failure } };Por ridículo que parezca, reinicia tu enrutador. O más técnicamente, tiene un problema con el DNS y reiniciar puede resolverlo.
Tuve un problema similar después de un corte de energía en casa. Cuando el NAS volvió, no todos los contenedores Docker volvieron a funcionar, incluido mi pihole. El DNS parecía estar bien en otros lugares, así que no me di cuenta, pero MongoDB Atlas específicamente tardó 20 segundos en conectarse. Después de iniciar el contenedor acoplable Pihole, ahora se conecta en 600 ms, que es mucho más cercano a lo normal.
No sé si esto te ayuda, pero ¿has intentado cambiar la lista de direcciones IP permitidas a todas y volver a intentarlo? Tuve el mismo problema en el que asigné mi IP de red a la lista permitida. Después de cambiarlo para permitir todas las IP en el panel de control de MongoDB, parece haber resuelto el problema.