druid配置datasource启动初始化数据库连接

12 篇文章 0 订阅

1、问题场景:服务在启动之后的第一笔或者几笔请求,处理时间较长,对于调用方来说超时,引发技术保底。
2、问题分析:
2.1、调用发系统通过http请求调用服务,设置超时时间为1s,超时时间过短,调整为3s;
2.2、应用启动之后的初始几笔请求处理时间过长,超过1s,跟踪日志发现在init-datasource中等待时间占用过多;
2.3、经过本地测试发现,在应用启动之后,在jvisualvm中查看mbeans中的druid.pool中的读写datasource的属性,启动之后的creatCount为0。在有请求进入之后才初始化了配置文件中的init连接数,导致了线上的问题;
3、解决方案:在数据库配置文件中配置读写datasource的bean中增加init-method=init的配置即可。druid官方文档中介绍,如果想要在项目启动的时候初始化配置的数据库连接数,需要显示配置或者调用init-method。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值