所以,目前在我的JedisPoolConfig bean中,我将参数testOnBorrow设置为true。看起来这种检索资源的速度较慢。
有一种情况,Jedis花了30分钟从Redis中检索资源(多次调用方法(redis.clients.jedis.BinaryJedis:exists:144和java.lang.Thread:sleep)获取资源或离开)。
我认为我可以做的是将参数testOnBorrow设置为false,以防止在读取资源之前对Redis进行PING调用。
所以,我的问题(我真的希望得到答案)是:
答案 0 :(得分:6)
Jedis testOnX
设置只是在某些情况下发送Redis PING命令。 testOnBorrow
在从池中接收连接时发送它们。
禁用它将使您更快地使用Redis,因为您跳过验证意味着减少一个TTL。请注意,您的应用应该知道如何处理错误的连接对象,但是在启用测试时也是如此,因为连接可以在测试之后和使用之前关闭/删除。
那就是说,30分钟是永恒的,绝大多数都没有发生,因为你发送了一个PING请求。 确保在完成后将连接返回到池中,并确保池大小足以满足应用程序的使用。