Connection pooling in Spring Boot and mongo db

后端 未结 1 2036
无人及你
无人及你 2021-01-22 08:27

I am going through spring boot application and mongoDb connection POC. I have added following dependency:


    org.springframew         


        
相关标签:
1条回答
  • 2021-01-22 08:55

    You cannot do this out of the box with application properties. You need to make use of MongoClientOptions to configure various aspects of connection pool.

    Have a look at the documentation for various options available.

    Here is a simple example.

    @Bean(name="mongoTempl")
    public MongoTemplate mongoTempl() throws Exception {
         return new MongoTemplate(createMongoClient(new ServerAddress(host, port))
                                  ,dbName);
    }
    
    
    Mongo createMongoClient(ServerAddress serverAddress) {
    final MongoClientOptions options = MongoClientOptions.builder()
            .threadsAllowedToBlockForConnectionMultiplier(...)
            .connectionsPerHost(...)
            .connectTimeout(...)
            .maxWaitTime(...)
            .socketKeepAlive(...)
            .socketTimeout(...)
            .heartbeatConnectTimeout(...)
            .minHeartbeatFrequency(...)
            .build();
    
            return new MongoClient(serverAddress, options);
    }
    
    0 讨论(0)
提交回复
热议问题