报错如下:
追踪源码发现第一个错误信息redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool,是由Caused by: java.util.NoSuchElementException: Unable to validate object错误引起的,所以先解决第二个错误。
网上搜索Caused by: java.util.NoSuchElementException: Unable to validate object,发现大部分都是说的原因一,这里记录一下
原因一:redis DB持久化的问题,需要修改redis.conf,(本人是windows版,没有redis.conf,只有redis.windows.conf和redis.windows-service.conf,这里提一下两个文件的区别,redis.windows-service.conf是提供给注册到windows服务使用的配置文件)
dir /tmp/redis_data
dbfilename temp.rdb
***原因二:有的说是redis开启了安全模式***这里不多说,不是这个问题
***原因三:最后在一个老哥那里看到了,说是开启了redis.testOnBorrow=true***然后尝试关闭这个,终于报其他错误信息了,眼泪掉下来。然后错误信息变成了redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set它的意思就是redis服务器没有设置密码,但客户端向其发送了AUTH请求,于是查看redis的配置文件,发现
密码这里没有设置值,于是尝试注释这一行,ok问题解决了。(上面的注释说不要设置,但是保留,我居然信了,*****不知道这是哪个老哥写的注释,害人不浅啊)
ok,到这里问题解决了,记录一下,希望能帮各位提供一下可能的思路,嘻嘻。
redis报错,Could not get a resource from the pool,Unable to validate object找不到可用的连接池
最新推荐文章于 2024-03-22 13:00:00 发布