Spring boot 选择druid作为连接池

  |   0 评论   |   69 浏览

一、前言

在选择连接池的时候,一开始我并没了解到java连接池的一个王者(HikariCP),要是是一个对并发有较高要求的建议选择HikariCP,所以本篇文章是记录spring boot + druid。

1、导入maven依赖

Druid mvn Link

<!-- 截止2019年5月Druid最新版本 -->
<!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.1.17</version>
</dependency>

<!-- spring boot druid 快速配置 -->
<!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.1.17</version>
</dependency>

2、配置

在导入了spring boot的快速配置后,druid可以直接在application文件中配置。

druid:
    # 下面为连接池的补充设置,应用到上面所有数据源中
    # 初始化大小,最小,最大
    initialSize: 1
    minIdle: 3
    maxActive: 20
    # 配置获取连接等待超时的时间
    maxWait: 60000
    # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
    timeBetweenEvictionRunsMillis: 60000
    # 配置一个连接在池中最小生存的时间,单位是毫秒
    minEvictableIdleTimeMillis: 30000
    validationQuery: select 'x'
    testWhileIdle: true
    testOnBorrow: false
    testOnReturn: false
    # 打开PSCache,并且指定每个连接上PSCache的大小
    poolPreparedStatements: true
    maxPoolPreparedStatementPerConnectionSize: 20
    # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
    filters: stat,wall,slf4j
    # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
    connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
    # 合并多个DruidDataSource的监控数据
    useGlobalDataSourceStat: true
    #druid http管理页面配置
    stat-view-servlet:
    enabled: true
    login-username: 用户名
    login-password: 密码
    allow: 127.0.0.1,192.168.233.0/24
    url-pattern: /druid/*
    reset-enable: false

配置基本结束,大家可以欢快的使用druid了。

评论