Spring中的aware接口详情
327
2022-10-08
SpringBoot集成Druid连接池进行SQL监控的问题解析
Druid连接池是阿里巴巴开源的数据库连接池项目。Druid连接池为监控而生,内置强大的监控功能,监控特性不影响性能。
Druid的监控统计功能是通过filter-chain扩展实现,采集的信息非常全面,包括SQL执行、并发、慢查、执行时间区间分布等。并且Druid内置提供了一个StatViewServlet用于展示Druid的统计信息,提高html页面展示非常完备的监控信息,可以快速诊wGwJLxFVG断系统的瓶颈。
而Druid增加StatFilter之后,能采集大量统计信息,同时对性能基本没有影响。StatFilter对CPU和内存的消耗都极小,对系统的影响可以忽略不计。监控不影响性能是Druid连接池的重要特性。
在SpringBoot工程中引入Druid连接池非常简单。
首先需要引入pom
在yml中增加一些配置
spring:
http:
encoding:
charset: UTF-8
force: true
enabled: true
datasource:
url: jdbc:mysql://xxx.xxx.xxx.xxx:3306/database?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password : 123456
driverClassName : com.mysql.cj.jdbc.Driver
type : com.alibaba.druid.pool.DruidDataSource
druid:
initialSize: 5
minIdle: 5
maxActive: 20
# 配置获取连接等待超时的时间
maxWait: 60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1 FROM DUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
# 打开PSCache,并且指定每个连接上PSCache的大小
poolPreparedStatements: true
maxPoolPreparedStatementPerConnectionSize: 20
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
filters: stat,wall,log4j2
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
# 合并多个DruidDataSource的监控数据
useGlobalDataSourceStat: true
# StatViewServlet配置 sql监控
stat-view-servlet:
enabled: true
url-pattern: "/druid/*"
reset-enable: false
login-username: druid
login-password: druid123
#允许那些ip
allow: 127.0.0.1,192.168.120.93
#禁止那些ip
deny: 192.168.120.93
# WebStatFilter配置 web-jdbc关联监控
web-stat-filter:
enabled: true
url-pattern: "/*"
exclusions: "*.jhttp://s,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
配置监控页面访问密码,通过设置login-username 和 login-password这两个初始参数。
allow和deny这两个参数,可以做访问控制。deny优先于allow,如果在deny列表中,就算在allow列表中,也会被拒绝。如果allow没有配置或者为空,则只允许127.0.0.1访问。
ip配置格式:
启动服务后,访问http://localhost:8080/druid 就可以访问监控页面。输入访问密码后,可对系统运行情况进行wGwJLxFVG监控。
监控web-jdbc关联
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~