Druid是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池(据说是目前最好的连接池)。今天主要讲在SpringBoot2.0中集成Druid。
在springboot2.0中,几乎不用修改任何代码,只需要引入pom.xml,更新application.yaml即可轻松完成Druid的搭建。
pom.xml 配置如下
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
配置完,
在pom.xml右键,进行maven reimport操作
更新完,我们可以点击配置行,进行跳转到druid的配置文件。
那么接下来, 就是在application.yaml进行配置
spring:
datasource:
druid:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/plan?
serverTimeZone=UTC&characterEncoding=utf8
&useSSL=true #数据库连接
username: root #数据库密码
password: liwanlei #数据库用户名
#配置线程池初始化大小,
initial-size: 10
max-active: 1000
min-idle: 10
max-wait: 60000 #连接超时配置
time-between-eviction-runs-millis: 2000
#多久进行检测一次空闲的连接,单位毫秒
max-evictable-idle-time-millis: 900000
#连接最大生存时间,单位毫秒
min-evictable-idle-time-millis: 600000
# 连接最小生存时间
keep-alive: true
filter:
stat:
slow-sql-millis: 10000 #配置监控拦截,慢sql,10秒,并且通过日志输出执行慢的SQL
log-slow-sql: true
启动工程
我的是在本地,。
访问http://127.0.0.1:9999/druid/sql.html
可以看到执行的sql 和执行的详细信息,
当然还有其他监控信息
监控的信息还是很全的,
我们看下uri的监控
详情
这些信息都能实时的统计。
感谢阿里开源。
本文参考地址:
https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_StatFilter
https://github.com/alibaba/druid/wiki/DruidDataSource%E9%85%8D%E7%BD%AE