转载

Spring Boot中增强对MongoDB的配置(连接池等)

之前转载了一篇关于 《如何在Spring Boot中是配置MongoDB的连接数》 的文章,相信关注我博客的朋友们肯定也看过了。这篇文章的作者主要重写了 MongoDbFactory 的构建来完成,整体实现的过程还是比较复杂的。本文就来具体说说如何更简单的来实现对MongoDB的更多配置定制。

spring-boot-starter-mongodb-plus

几周之后就在spring4all的github上创建了这个项目,主要就是想扩展一下官方spring boot starter对mongodb的支持,提供更多配置属性,比如:连接数的配置等。

先来看看如果使用这个扩展,是否要比之前那样自己定制要方便的多:

如何使用

  1. 在使用了 spring-boot-starter-data-mongodb 的项目中,增加以下依赖
<dependency>
    <groupId>com.spring4all</groupId>
    <artifactId>mongodb-plus-spring-boot-starter</artifactId>
    <version>1.0.0.RELEASE</version>
</dependency>
  1. 在应用主类上增加 @EnableMongoPlus 注解,比如:
@EnableMongoPlus
@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

可用配置参数

可配置参数如下:

spring.data.mongodb.option.min-connection-per-host=0
spring.data.mongodb.option.max-connection-per-host=100
spring.data.mongodb.option.threads-allowed-to-block-for-connection-multiplier=5
spring.data.mongodb.option.server-selection-timeout=30000
spring.data.mongodb.option.max-wait-time=120000
spring.data.mongodb.option.max-connection-idle-time=0
spring.data.mongodb.option.max-connection-life-time=0
spring.data.mongodb.option.connect-timeout=10000
spring.data.mongodb.option.socket-timeout=0

spring.data.mongodb.option.socket-keep-alive=false
spring.data.mongodb.option.ssl-enabled=false
spring.data.mongodb.option.ssl-invalid-host-name-allowed=false
spring.data.mongodb.option.always-use-m-beans=false

spring.data.mongodb.option.heartbeat-socket-timeout=20000
spring.data.mongodb.option.heartbeat-connect-timeout=20000
spring.data.mongodb.option.min-heartbeat-frequency=500
spring.data.mongodb.option.heartbeat-frequency=10000
spring.data.mongodb.option.local-threshold=15

上述配置值均为默认值

原文  http://blog.didispace.com/springbootmongodb-plus/
正文到此结束
Loading...