当前位置: 首页 > news >正文

数据库连接池Druid的最佳实践

一、通过Maven引入Druid

<!--数据库连接池Druid--><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-3-starter</artifactId><version>1.2.23</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId><exclusions><exclusion><groupId>com.zaxxer</groupId><artifactId>HikariCP</artifactId></exclusion></exclusions></dependency></dependencies>

二、修改application.yml的配置

spring:# 数据源配置datasource:driver-class-name:com.mysql.cj.jdbc.Driverurl:jdbc:mysql://localhost:3306/mianshiyausername:rootpassword:123456# 指定数据源类型type:com.alibaba.druid.pool.DruidDataSource# Druid 配置druid:# 配置初始化大小、最小、最大initial-size:10minIdle:10max-active:10# 配置获取连接等待超时的时间(单位:毫秒)max-wait:60000# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒time-between-eviction-runs-millis:2000# 配置一个连接在池中最小生存的时间,单位是毫秒min-evictable-idle-time-millis:600000max-evictable-idle-time-millis:900000# 用来测试连接是否可用的SQL语句,默认值每种数据库都不相同,这是mysqlvalidationQuery:select 1# 应用向连接池申请连接,并且testOnBorrow为false时,连接池将会判断连接是否处于空闲状态,如果是,则验证这条连接是否可用testWhileIdle:true# 如果为true,默认是false,应用向连接池申请连接时,连接池会判断这条连接是否是可用的testOnBorrow:false# 如果为true(默认false),当应用使用完连接,连接池回收连接的时候会判断该连接是否还可用testOnReturn:false# 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oraclepoolPreparedStatements:true# 要启用PSCache,必须配置大于0,当大于0时, poolPreparedStatements自动触发修改为true,# 在Druid中,不会存在Oracle下PSCache占用内存过多的问题,# 可以把这个数值配置大一些,比如说100maxOpenPreparedStatements:20# 连接池中的minIdle数量以内的连接,空闲时间超过minEvictableIdleTimeMillis,则会执行keepAlive操作keepAlive:true# Spring 监控,利用aop 对指定接口的执行时间,jdbc数进行记录aop-patterns:"com.springboot.template.dao.*"########### 启用内置过滤器(第一个 stat 必须,否则监控不到SQL)##########filters:stat,wall,slf4j# 自己配置监控统计拦截的filterfilter:# 开启druiddatasource的状态监控stat:enabled:truedb-type:mysql# 开启慢sql监控,超过2s 就认为是慢sql,记录到日志中log-slow-sql:trueslow-sql-millis:2000# 日志监控,使用slf4j 进行日志输出slf4j:enabled:truestatement-log-error-enabled:truestatement-create-after-log-enabled:falsestatement-close-after-log-enabled:falseresult-set-open-after-log-enabled:falseresult-set-close-after-log-enabled:false########## 配置WebStatFilter,用于采集web关联监控的数据 ##########web-stat-filter:enabled:true# 启动 StatFilterurl-pattern:/*# 过滤所有urlexclusions:"*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"# 排除一些不必要的urlsession-stat-enable:true# 开启session统计功能session-stat-max-count:1000# session的最大个数,默认100########## 配置StatViewServlet(监控页面),用于展示Druid的统计信息 ##########stat-view-servlet:enabled:true# 启用StatViewServleturl-pattern:/druid/*# 访问内置监控页面的路径,内置监控页面的首页是/druid/index.htmlreset-enable:false# 不允许清空统计数据,重新计算login-username:root# 配置监控页面访问密码login-password:123allow:127.0.0.1# 允许访问的地址,如果allow没有配置或者为空,则允许所有访问deny:# 拒绝访问的地址,deny优先于allow,如果在deny列表中,就算在allow列表中,也会被拒绝

三、启动后访问监控面板:

http://localhost:8080/druid/index.html

有的时候,即使我们服务⁡⁡⁡器 JVM 的内存和 CPU 占用都非常低⁠⁠⁠,其他的中间件比如 MySQL 和 Red​​​is 的占用也非常低,但系统依然会出现响应慢、卡死的情况。这可能就是因为一些配置错误⁡⁡⁡,所以了解这些知识还是非常有必要的。

http://www.jsqmd.com/news/412140/

相关文章:

  • 【联邦学习高级应用】HIPAA技术专题 原理和实现
  • 【2026免费】基于SpringBoot的社区医院信息平台
  • 2026执业药师培训机构避坑不踩雷,零基础也能高效通关 - 品牌测评鉴赏家
  • Java程序员失业转型大模型开发:3个月实现高薪入职,附副业变现秘籍及104G免费学习资源包(收藏)
  • 北京净水器供应商怎么选?专业科普+5家靠谱品牌推荐 - 小坤哥
  • 执业药师考试培训怎么选?吃透这篇少走弯路 - 品牌测评鉴赏家
  • 小白程序员轻松入门RAG,玩转金融大模型情报分析
  • 题解:AT_arc156_f [ARC156F] Make Same Set
  • 宝妈必看|中国十大童装品牌盘点,安全好看还省心 - 品牌测评鉴赏家
  • 2026深圳春节期间值得一看的12个展览
  • 宝妈必看!2026中国十大童装品牌大揭秘 - 品牌测评鉴赏家
  • 2026年GEO优化服务商深度测评报告:从技术实力到效果落地的TOP5优选指南 - 小白条111
  • 大数据里Zookeeper:数据同步的实现原理
  • 2.25
  • 2026年广州GEO优化培训机构选型指南:从实战效果到服务能力的深度测评 - 小白条111
  • 容器内端口冲突问题
  • 2026年GEO优化工具深度测评:从技术到效果的6大主流品牌选型指南 - 小白条111
  • 无人驾驶-202411-智能驾驶-视觉感知后处理04-车道线检测及后处理04:车道线与辅助驾驶功能
  • Solutions usaco C chn
  • RAG工程实战:从知识库构建到企业级部署的全链路详解
  • 2026年GEO优化服务商选型指南:6家靠谱机构深度测评与避坑要点 - 小白条111
  • 收藏这份ACP协议指南,轻松驾驭多AI助手提升开发效率
  • 嵌入模型与Chroma向量数据库 - Chroma安装与简单应用实例 - AI大模型应用开发必备知识
  • 春季最容易倒下的人,常忽视了这件事:2026免疫力红黑榜与系统修复全指南 - 品牌企业推荐师(官方)
  • Python数据分析:整理Netflix演员电影评分项目实战
  • 春季为啥你总先倒下?2026免疫力红黑榜与系统修复指南:少感冒、不过敏、恢复更快的底层答案 - 品牌企业推荐师(官方)
  • 春季通勤-开学-差旅三重考验,谁在悄悄掏空你的免疫力?2026六款机能修复产品深测 - 品牌企业推荐师(官方)
  • 2026年靠谱股票配资平台评测:聚焦正规实盘验证与资金安全可查性分析
  • CF1623c Strange Test题解
  • 春季花粉潮、昼夜温差、回南天三重夹击?2026父母免疫力稳健提升全攻略 - 品牌企业推荐师(官方)