繁体   English   中英

Spring Boot和Mongo DB中的连接池

[英]Connection pooling in Spring Boot and mongo db

我正在通过Spring Boot应用程序和mongoDb连接POC。 我添加了以下依赖项:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

我也通过了mongoB属性和属性: https ://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

您能在这里定义连接池机制吗?

您不能使用应用程序属性立即执行此操作。 您需要使用MongoClientOptions来配置连接池的各个方面。

请参阅文档以了解各种可用选项。

这是一个简单的例子。

@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);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM