背景:
Redis的softMinEvictableIdleTimeMillis,minEvictableIdleTimeMillis是一个令人疑惑两个参数,特别是当它和minIdle组合起来时就更难理解了,本文就来梳理下他们的之间的关系
softMinEvictableIdleTimeMillis,minEvictableIdleTimeMillis的关系

看到了没,对于softMinEvictableIdleTimeMillis来说:只有空闲时间大于softMinEvictableIdleTimeMillis并且此时连接池中空闲连接数大于minIdle时才会关闭连接,而对于minEvictableIdleTimeMillis来说,只要空闲连接时间大于minEvictableIdleTimeMillis就会把连接关闭,ok,那这里的你是否想过minEvictableIdleTimeMillis关闭连接后是有可能导致空闲连接数小于minIdle数量的,那是不是和你想象中的连接池里面肯定有minIdle的连接数相矛盾?继续往下看:

其实这个连接池中连接数小于minIdle的时间是很短暂的,因为下一行方法就会判断连接数是否满足minIdle,如果不满足,他会创建新的redis连接,所以理解这里的关键在于意识到minIdle有可能会短暂的不满足的






![读书笔记-《ON JAVA 中文版》-摘要25[第二十二章 枚举]](https://img-blog.csdnimg.cn/4606b2bdbe5649baa6dc96e5fbf95382.png)











