1、之前做项目的时候,发现有些项目存在数据库无限重连问题,如果在假期没人监控,可能导致日志文件爆满。

解决方案   :步骤1、更换新版本的Druid,如下(网上很多人反馈是在老版本中才存在)

        <dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid-spring-boot-starter</artifactId>
			<version>1.2.1</version>
		</dependency>

      2、配置文件中加上失败重连次数限制

  #连接失败后重试次数
  connection-error-retry-attempts: 5
  

3、配置数据库连接失败,项目启动失败

@Component
public class CheckDataSourceHelper implements ApplicationContextAware {

    private static ApplicationContext context;
    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        try {
            context = applicationContext;
            // 项目初始化完成后,手动检验数据库
            DataSource dataSource = (DataSource) context.getBean("dataSource");
            dataSource.getConnection().close();
        } catch (Exception e) {
            e.printStackTrace();
            // 当检测数据库连接失败时, 停止项目启动
            System.exit(-1);
        }
    }
    public ApplicationContext getApplicationContext() {
        return context;
    }
}

 

GitHub 加速计划 / druid / druid
27.83 K
8.56 K
下载
阿里云计算平台DataWorks(https://help.aliyun.com/document_detail/137663.html) 团队出品,为监控而生的数据库连接池
最近提交(Master分支:3 个月前 )
f060c270 - 13 天前
1613a765 * Improve gaussdb ddl parser * fix temp table 15 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐