3 votes

Changer la taille du pool de connexions Mongo par défaut dans spring-boot

Je veux changer la taille par défaut du pool de connexions fourni par le pilote Java MongoDB qui est de 100 selon la documentation de mongo.

Voici le bean mongo client que j'ai utilisé pour personnaliser la taille du pool de connexions (référé à cette question). J'ai défini les attributs connectionsPerHost min et max à 1 et j'ai exécuté 10 threads de travail parallèles qui interagissent avec la base de données pour m'assurer que ma modification est appliquée.

@Bean
public Mongo mongo() throws Exception {
    MongoClientOptions.Builder clientOptions = new MongoClientOptions.Builder();
    clientOptions.minConnectionsPerHost(1);
    clientOptions.connectionsPerHost(1);
    MongoClient mongoClient = new MongoClient(new MongoClientURI(env.getProperty("mongodbhost"), clientOptions));
    return mongoClient;
}

Ensuite, j'ai calculé les moments de démarrage et de fin de chaque thread de travail. Ainsi, je sais avec certitude que les threads fonctionnent en parallèle et que la taille de mon pool de connexions n'a pas été modifiée par cette configuration. Est-ce que quelqu'un pourrait m'aider à résoudre ce problème s'il vous plaît? Toute aide serait grandement appréciée!

1voto

Alex Efimov Points 988

Vous pouvez configurer la taille du pool de connexions via les paramètres d'uri de MongoDb. Détails - https://stackoverflow.com/a/50407284/6629515

1voto

Namjith Aravind Points 116

Vous pouvez configurer les paramètres de connexion par uri.

spring.data.mongodb.uri=mongodb://localhost:27017/?connectTimeoutMS=300000&minPoolSize=0&maxPoolSize=10&maxIdleTimeMS=900000

Veuillez consulter la documentation suivante pour d'autres paramètres.

https://docs.mongodb.com/manual/reference/connection-string/#connections-connection-options

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X