Essayez de définir l'option maxConnectionIdleTime dans votre MongoClientOptions (surtout si vous utilisez un environnement MongoDB hébergé)
Exemple :
new MongoClientOptions.Builder()
.requiredReplicaSetName(REPLICASET_NAME)
.maxConnectionIdleTime (MAX_IDLE_TIME)
.connectionsPerHost(CONNECTION_PER_HOST)
.cursorFinalizerEnabled(false)
.build();
connectTimeout est trompeur car il s'agit du paramètre de délai d'attente pour la connexion initiale.
Pour le problème de réinitialisation de MongoClient, assurez-vous que le code client est dans la bonne portée pour que le code d'insertion soit récupéré. De plus, je ne vois que la base de données et non l'objet de niveau collection (proxy ?) Réinitialisé.