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

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

总结

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

相关文章

  • spring-boot项目启动迟缓异常排查解决记录

    spring-boot项目启动迟缓异常排查解决记录

    这篇文章主要为大家介绍了spring-boot项目启动迟缓异常排查解决记录,突然在本地启动不起来了,表象特征就是在本地IDEA上运行时,进程卡住也不退出,应用启动时加载相关组件的日志也不输出
    2022-02-02
  • MyBatis新增数据时自增id的两种写法小结

    MyBatis新增数据时自增id的两种写法小结

    本文介绍了在MyBatis中配置自增ID的两种方法:一种是通过在Mapper文件中设置useGeneratedKeys和keyProperty,另一种是使用selectKey标签,批量插入时,同样采用useGeneratedKeys标签,感兴趣的可以了解一下
    2024-09-09
  • 简单了解java中int和Integer的区别

    简单了解java中int和Integer的区别

    这篇文章主要介绍了简单了解java中int和Integer的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • Java正则多字符串匹配替换

    Java正则多字符串匹配替换

    正则表达式异常强大,一直理解不深,用的也不深,这次项目中尝试,体会到了它的强大之处。字符串查找,匹配,替换,正则无不能做,特别是灵活的运用子串匹配得到的变量值$1,$2,再进行二次处理能够达到很巧妙的效果。
    2013-02-02
  • 详解如何将Spring Boot应用跑在Docker容器中

    详解如何将Spring Boot应用跑在Docker容器中

    这篇文章主要介绍了详解如何将Spring Boot应用跑在Docker容器中,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • spring boot实战之内嵌容器tomcat配置

    spring boot实战之内嵌容器tomcat配置

    本篇文章主要介绍了Spring Boot 使用内嵌的tomcat容器配置,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • 详解Spring数据缓存注解@Cacheable、@CachePut、@CacheEvict

    详解Spring数据缓存注解@Cacheable、@CachePut、@CacheEvict

    这篇文章主要介绍了详解Spring数据缓存注解@Cacheable、CachePut、@CacheEvict,当以一组参数第一次调用某个方法时,返回值会被保存在缓存中,如果这个方法再次以相同的参数进行调用时,这个返回值会从缓存中查询获取,需要的朋友可以参考下
    2023-07-07
  • java随机生成8位数授权码的实例

    java随机生成8位数授权码的实例

    下面小编就为大家带来一篇java随机生成8位数授权码的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • mybatis返回结果为Map问题

    mybatis返回结果为Map问题

    这篇文章主要介绍了mybatis返回结果为Map问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • maven配置多个镜像的实现方法

    maven配置多个镜像的实现方法

    这篇文章主要介绍了maven配置多个镜像的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06

最新评论