Probeer de maxConnectionIdleTime-optie in uw MongoClientOptions in te stellen (vooral als u een gehoste MongoDB-omgeving gebruikt)
Voorbeeld:
new MongoClientOptions.Builder()
.requiredReplicaSetName(REPLICASET_NAME)
.maxConnectionIdleTime (MAX_IDLE_TIME)
.connectionsPerHost(CONNECTION_PER_HOST)
.cursorFinalizerEnabled(false)
.build();
connectTimeout is misleidend omdat het de time-outinstelling is voor de eerste verbinding.
Voor het probleem rond het opnieuw initialiseren van de MongoClient, moet u ervoor zorgen dat de clientcode zich in het juiste bereik bevindt zodat de invoegcode kan worden opgehaald. Ik zie ook dat alleen de db en niet het object op collectieniveau (proxy?) opnieuw wordt geïnitialiseerd.