SpringBoot集成Druid监控页面最小化配置操作

 更新时间:2020年09月29日 14:43:28   作者:xqnode  
这篇文章主要介绍了SpringBoot集成Druid监控页面最小化配置操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在项目中使用阿里的druid连接池,pom文件配置:

<dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <scope>runtime</scope>
</dependency>
<dependency>
 <groupId>com.alibaba</groupId>
 <artifactId>druid-spring-boot-starter</artifactId>
 <version>1.1.14</version>
</dependency>

application.properties配置,官方文档可查:

# Druid连接池配置,官方配置参考:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter
spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
# Druid其他配置
spring.datasource.druid.initial-size=5
spring.datasource.druid.max-active=20
spring.datasource.druid.min-idle=10
spring.datasource.druid.max-wait=10
spring.datasource.druid.filters=stat,wall
spring.datasource.druid.filter.stat.log-slow-sql=true
spring.datasource.druid.filter.stat.slow-sql-millis=2000

# Druid WebStatFilter配置,说明请参考Druid Wiki,配置_配置WebStatFilter
spring.datasource.druid.web-stat-filter.enabled=true
spring.datasource.druid.web-stat-filter.url-pattern=/*
spring.datasource.druid.web-stat-filter.exclusions=*.gif,*.png,*.jpg,*.html,*.js,*.css,*.ico,/druid/*

# Druid StatViewServlet配置,说明请参考Druid Wiki,配置_StatViewServlet配置
spring.datasource.druid.stat-view-servlet.enabled=true
spring.datasource.druid.stat-view-servlet.url-pattern=/druid/*
spring.datasource.druid.stat-view-servlet.reset-enable=true
spring.datasource.druid.stat-view-servlet.login-username=admin
spring.datasource.druid.stat-view-servlet.login-password=admin
spring.datasource.druid.stat-view-servlet.allow=
spring.datasource.druid.stat-view-servlet.deny=

OK,搞定~

接下来,启动项目,打开地址:http://localhost:8080/druid

页面长这样:

我来请求一下接口,查询sql,确实监控到了:

补充知识:druid 配置理解及监控界面参数理解

druid 配置理解

官方文档中的很多配置,不是太理解或者貌似理解了,自己不实践一下,心里也不踏实,所以决定自己搞一个demo测试一下理解理解各个配置到底是什么意思

一、druidDataSource 配置

参数名称 我的理解 官方说明
pool-prepared-statements preparedStatement的创建会消耗很多的系统资源,同样的sql可以重用preparedStatement 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭
initial-size 初始化连接数 连接池建立时创建的初始化连接数
max-pool-prepared-statement-per-connection-size 这个我不是太确定,这个应该是PSCache的缓存大小吧,官方说可以给大一点,单位也不清楚,那就给100吧
validation-query 这个配置还是很容易理解的,关键是怎么去验证一下,比如在testOnBorrow=true,当申请链接时,确实会执行validation-query.我是这样验证的,validation-query=select 1 from dualss(有语法错误的sql),结果在申请链接的时候就报错了,证明在testOnBorrow的时候确实执行了validation-query,后面的testOnReturn,testWhileIdle我没有验证,应该都一样 用来检测连接是否有效的sql,要求是一个查询语句,常用select ‘x'。如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会起作用。
validation-query-timeout 不知道怎么验证
test-on-borrow 不知道怎么验证,因为无论是true,还是false,只要validation-query有值,都会执行一下validation-query
test-on-return 不知道怎么验证
test-while-idle 不知道怎么验证
time-between-eviction-runs-millis 默认是1分钟,就是destory每隔1分钟会执行一次

二、后台监控页面中的各数值的含义

我的端口是8585,就是如下图这个界面中每行

参数名称 中文 我的理解 官方说明
ActiveCount 活跃连接数 有n个连接正在执行sql,那么这个值就为n 当前连接池中活跃连接数
InitialSize 初始化连接大小 默认就是项目启动就会初始化的连接数 连接池建立时创建的初始化连接数
LogicConnectCount 逻辑连接打开次数 与MaxActive没有关系,连接被用一次,LogicConnectCount就会+1,就是连接池中的连接被用次数综合 产生的逻辑连接建立总数
minEvictableIdleTimeMillis 连接保持空闲而不被驱逐的最小时间

以上这篇SpringBoot集成Druid监控页面最小化配置操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 解决zuulGateway网关添加路由异常熔断问题

    解决zuulGateway网关添加路由异常熔断问题

    这篇文章主要介绍了解决zuulGateway网关添加路由异常熔断问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • 深入java对象复制的分析

    深入java对象复制的分析

    本篇文章是对java对象复制进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • 谈谈Java中Volatile关键字的理解

    谈谈Java中Volatile关键字的理解

    volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果,本文给大家介绍java中volatile关键字,需要的朋友参考下
    2016-03-03
  • IntelliJ IDEA 2023版本创建Spring项目时Java只能选择17或21的问题解决方法

    IntelliJ IDEA 2023版本创建Spring项目时Java只能选择17或21的问题解决方法

    spring-boot是一个基于Java的开源框架,用于快速构建生产级别的应用程序,这篇文章主要给大家介绍了关于IntelliJ IDEA 2023版本创建Spring项目时Java只能选择17或21的问题解决方法,需要的朋友可以参考下
    2024-07-07
  • Javadoc 具体使用详解

    Javadoc 具体使用详解

    这篇文章主要介绍了Javadoc 具体使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • IDEA报错之前言中不允许有内容问题及解决

    IDEA报错之前言中不允许有内容问题及解决

    当使用IntelliJ IDEA时,可能会遇到报错信息“前言中不允许有内容”,这通常是由于XML文件是以带有BOM头的UTF-8格式保存的,导致IDE的解析出错,解决办法是在IDEA中调整文件编码设置为无BOM的UTF-8,然后用文本编辑器(如Notepad++)
    2024-10-10
  • springcloud 熔断器Hystrix的具体使用

    springcloud 熔断器Hystrix的具体使用

    本篇文章主要介绍了springcloud 熔断器Hystrix的具体使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • RocketMQ设计之故障规避机制

    RocketMQ设计之故障规避机制

    这篇文章主要介绍了RocketMQ设计之故障规避机制,故障规避机制就是用来解决当Broker出现故障,Producer不能及时感知而导致消息发送失败的问题,下面详细介绍需要的小伙伴可以参考一下
    2022-03-03
  • Spring mvc文件上传下载代码实例

    Spring mvc文件上传下载代码实例

    这篇文章主要介绍了Spring mvc文件上传下载代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Java报错Java.text.ParseException的解决方法汇总

    Java报错Java.text.ParseException的解决方法汇总

    在Java开发的复杂世界中,错误处理是开发者必须面对的关键挑战之一,其中,Java.text.ParseException就像一个隐藏在代码丛林中的陷阱,常常让开发者们陷入困惑,本文给大家介绍了Java报错Java.text.ParseException的解决方法,需要的朋友可以参考下
    2024-10-10

最新评论