Springboot项目长时间不进行接口操作,提示HikariPool-1警告的解决

 更新时间:2023年12月13日 09:07:01   作者:程序猿不秃头  
这篇文章主要介绍了Springboot项目长时间不进行接口操作,提示HikariPool-1警告的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

问题描述

Spring boot项目长时间未进行操作,前端进行调用接口时第一次会报警报,并且接口访问时间过长而导致第一次调用接口失败

Creating a new SqlSession
SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@286d93a8] was not registered for synchronization because synchronization is not active
2020-12-01 11:27:56.356  WARN 8392 --- [nio-9099-exec-7] com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@17b7bbbb (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.
2020-12-01 11:28:01.359  WARN 8392 --- [nio-9099-exec-7] com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@43a8ad76 (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.
2020-12-01 11:28:06.362  WARN 8392 --- [nio-9099-exec-7] com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@11ef23d4 (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.
2020-12-01 11:28:11.366  WARN 8392 --- [nio-9099-exec-7] com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@4cb8a9c2 (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.
2020-12-01 11:28:16.373  WARN 8392 --- [nio-9099-exec-7] com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@22641536 (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.
2020-12-01 11:28:21.375  WARN 8392 --- [nio-9099-exec-7] com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@3946dfc7 (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.

解决方法

我们查看数据库的HikariPool源码

找到HikariDataSource类,他继承了HikariConfig

我们看Hikar的相关配置,进入HikarConfig中,在这里我们可以看到默认池大小为10,我们在数据库配置中修改默认池大小即可解决问题

配置文件中加入

  • minimum-idle最小空闲数
  • maximum-pool-size链接池最大数量
  • max-lifetime最大时长,配置为0则是永久不过期

    hikari:
      minimum-idle: 3
      maximum-pool-size: 5
      max-lifetime: 0

修改过配置文件后即可解决问题

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 使用LocalDateTime计算两个时间之间的间隔

    使用LocalDateTime计算两个时间之间的间隔

    本文介绍了如何使用Java中的LocalDateTime和LocalDate计算日期间隔,包括获取时间间隔、精确到小数以及使用算法判断时间段是否超过一个月或一年
    2026-01-01
  • Java枚举类型在switch语句正确使用方法详解

    Java枚举类型在switch语句正确使用方法详解

    这篇文章主要介绍了Java枚举类型在switch语句正确使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Olingo分析和实践之OData框架核心组件初始化(关键步骤)

    Olingo分析和实践之OData框架核心组件初始化(关键步骤)

    ODataSpringBootService通过初始化OData实例和服务元数据,构建框架核心能力与数据模型结构,实现序列化、URI解析及URL映射,为请求处理提供基础支撑,本文给大家介绍Olingo分析和实践之OData框架核心组件初始化,感兴趣的朋友一起看看吧
    2025-07-07
  • 在Spring中使用JDBC和JDBC模板的讲解

    在Spring中使用JDBC和JDBC模板的讲解

    今天小编就为大家分享一篇关于在Spring中使用JDBC和JDBC模板的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • springboot短信验证码登录功能的实现

    springboot短信验证码登录功能的实现

    这篇文章主要介绍了springboot短信验证码登录功能的实现,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • MybatisPlus实现真正批量插入的详细步骤

    MybatisPlus实现真正批量插入的详细步骤

    在数据库操作中,批量插入是提升效率的重要手段,MyBatis-Plus提供了多种批量插入方法,但默认的saveBatch方法效率并不高,文章介绍了通过手动拼接SQL、使用IService接口以及自定义insertBatchSomeColumn方法进行优化,以实现更高效的批量插入,并给出了性能优化建议
    2024-10-10
  • 深入理解java内置锁(synchronized)和显式锁(ReentrantLock)

    深入理解java内置锁(synchronized)和显式锁(ReentrantLock)

    这篇文章主要介绍了Java多线程之内置锁(synchronized)和显式锁(ReentrantLock)的深入理解新的和用法,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11
  • 详解Java反射实现Aop代理

    详解Java反射实现Aop代理

    本篇文章主要介绍了Java 反射实现 Aop 代理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • myeclipse创建servlet_动力节点Java学院整理

    myeclipse创建servlet_动力节点Java学院整理

    这篇文章主要为大家详细介绍了myeclipse创建servlet的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • 一文详解Java Stream的sorted自定义排序

    一文详解Java Stream的sorted自定义排序

    Java stream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorted方法返回一个新的流,其中的元素按照指定的排序规则进行排序,本文给大家详细介绍了Java Stream的sorted自定义排序,需要的朋友可以参考下
    2025-06-06

最新评论