
Druid
文章平均质量分 74
木鱼-
过一天就要进步一点,而且不知道也会更多,还有每天都会忘记一点。所以每天还得做功课
展开
-
Spring系列之集成Druid连接池及监控配置
前一篇文章我们熟悉了HikariCP连接池,也了解到它的性能很高,今天我们讲一下另一款比较受欢迎的连接池:Druid,这是阿里开源的一款数据库连接池,它官网上声称:为监控而生!他可以实现页面监控,看到SQL的执行次数、时间和慢SQL信息,也可以对数据库密码信息进行加密,也可以对监控结果进行日志的记录,以及可以实现对敏感操作实现开关,杜绝SQL注入,下面我们详细讲一下它如何与Spring集成,并且顺便了解一下它的监控的配置。Spring集成Druid。转载 2024-06-25 17:10:04 · 1917 阅读 · 0 评论 -
Druid配置参数详解-minIdle
minIdle是什么意思?minIdle:连接池中的最小空闲连接数,Druid会定时扫描连接池的连接,如果空闲的连接数大于该值,则关闭多余的连接,反之则创建更多的连接以满足最小连接数要求。为什么要设置这个参数?设置这个参数可以应对突发流量,如果没有设置空闲连接,当有多个请求同时调用数据库,但是连接池中并没有可用连接,这时就必须创建连接,创建连接是一个非常耗时的操作,有可能会导致请求超时。minIdle是怎么起作用的?当连接池初始化时,会初始化一个定时清除空闲连接的任务DestroyTas转载 2021-11-30 15:09:45 · 10835 阅读 · 0 评论 -
Druid连接池的监控stat造成内存泄漏
阿里的Druid连接池可以对sql进行监控。但是监控信息会存储在内存中,某些场景下会造成内存泄漏。1. 起因线上某台机器报警(堆内存使用率高),登录服务器将堆dump下来,进行分析:image.png发现:JdbcDataSourceStat中的sqlStatMap比较消耗内存。因为就是Druid开启stat监控,所以sql信息就会存储到该Map中,占用内存,造成内存泄漏。stat监控sql信息页面:可以看到会持有sql信息。image.png当然也有人在gith.转载 2021-11-30 15:02:58 · 2768 阅读 · 0 评论 -
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure另一种解决方法
这个问题,在网上也有很多方案,以及解决方案,如:增加一个配置#下面这两个配置,可以在每次连接的时候判断一些连接是否有效spring.datasource.druid.test-on-borrow=truespring.datasource.druid.test-while-idle=true这种办法会导致数据库性能问题,因为每次查询都要去连接测试这个连接是否有效。原创 2021-11-30 14:58:50 · 2170 阅读 · 0 评论 -
springboot的druid监控配置
druid的配置文档链接:https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_StatFilter本文的在这要说明spring中配置类写法的配置Druid监控:原创 2021-11-30 14:34:04 · 598 阅读 · 0 评论 -
druid释放空闲连接的问题
一、问题背景 最近在某个项目的生产环境碰到一个数据库连接问题,使用的连接池是alibaba的druid_1.1.10,问题表现为:DBA监测到应用集群到oracle的连接数总会在半夜降低,并且大大低于每个节点druid配置的minIdle总和。 一开始怀疑此问题产生的原因是oracle侧主动关闭了连接,但很难去验证这个点,一方面是和DBA沟通起来比较麻烦,另一方面是没有确切的证据,纯粹靠猜想很难服众,所以退而求其次,尝试在druid连接池上去找原因。既然是半夜这种交易量小的时间点降低连接数,那么转载 2021-11-30 14:25:04 · 14560 阅读 · 1 评论 -
Druid配置参数说明-testWhileIdle,testOnBorrow,testOnReturn
testWhileIdle:如果为true(默认true),当应用向连接池申请连接,并且testOnBorrow为false时,连接池将会判断连接是否处于空闲状态,如果是,则验证这条连接是否可用。testWhileIdle什么时候会起作用?获取连接时;testOnBorrow==false;testWhileIdle==true;使用代码在DruidDataSource的getConnectionDirect方法注意:此时判断连接空闲的依据是空闲时间大于timeBetweenEvictionR翻译 2021-11-30 10:09:55 · 2814 阅读 · 0 评论