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

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

Spring Boot中增强对MongoDB的配置(连接池等)_第1张图片

spring-boot-starter-mongodb-plus

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

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

如何使用

1. 在使用了 spring-boot-starter-data-mongodb的项目中,增加以下依赖


 
   
  1.    com.spring4all

  2.    mongodb-plus-spring-boot-starter

  3.    1.0.0.RELEASE


2. 在应用主类上增加 @EnableMongoPlus注解,比如:


 
   
  1. @EnableMongoPlus

  2. @SpringBootApplication

  3. public class Application {

  4.    public static void main(String[] args) {

  5.        SpringApplication.run(Application.class, args);

  6.    }

  7. }

支持的配置参数

可配置参数如下:

 
   
  1. spring.data.mongodb.option.min-connection-per-host=0

  2. spring.data.mongodb.option.max-connection-per-host=100

  3. spring.data.mongodb.option.threads-allowed-to-block-for-connection-multiplier=5

  4. spring.data.mongodb.option.server-selection-timeout=30000

  5. spring.data.mongodb.option.max-wait-time=120000

  6. spring.data.mongodb.option.max-connection-idle-time=0

  7. spring.data.mongodb.option.max-connection-life-time=0

  8. spring.data.mongodb.option.connect-timeout=10000

  9. spring.data.mongodb.option.socket-timeout=0

  10. spring.data.mongodb.option.socket-keep-alive=false

  11. spring.data.mongodb.option.ssl-enabled=false

  12. spring.data.mongodb.option.ssl-invalid-host-name-allowed=false

  13. spring.data.mongodb.option.always-use-m-beans=false

  14. spring.data.mongodb.option.heartbeat-socket-timeout=20000

  15. spring.data.mongodb.option.heartbeat-connect-timeout=20000

  16. spring.data.mongodb.option.min-heartbeat-frequency=500

  17. spring.data.mongodb.option.heartbeat-frequency=10000

  18. spring.data.mongodb.option.local-threshold=15

上述所配置的值均为默认值

后记

如果您觉得该项目对您有用,欢迎给予Star支持:https://github.com/SpringForAll/spring-boot-starter-mongodb-plus/

同时也欢迎关注我的:

  • Github: https://github.com/dyc87112/

  • 博客: http://blog.didispace.com/


之前发布的简陋版Spring Cloud服务管理开源项目Isona还在缓慢开发中,敬请期待:https://github.com/SpringForAll/isona

推荐阅读

  • 阿里云Redis开发规范

  • JedisPool资源池优化

  • Jedis常见异常汇总

  • 微网关与服务啮合

  • Spring Boot 2.0 新特性(二):新增事件ApplicationStartedEvent

  • Spring Boot 2.0 新特性(一):配置绑定 2.0 全解析

  • Spring Boot 2.0正式发布,升还是不升呢?

  • Spring Boot 2.0 新特性概览

  • Spring Boot/Cloud干货汇总


长按指纹

一键关注

640?wx_fmt=jpeg 640?wx_fmt=png

深入交流、更多福利

扫码加入我的知识星球


640?wx_fmt=png


点击 “阅读原文” 看看本号其他精彩内容

你可能感兴趣的:(Spring Boot中增强对MongoDB的配置(连接池等))