springboot 2.0 Redis command timed out的解決

環境:springboot 2.0.7 spring data redisgit

springboot從1.x升級到2.x後,spring data redis使用的redis客戶端驅動從1.x的jedis換到lettucegithub

使用過程當中,出現Redis command timed out報錯,網上搜索後,不少文章都說配置項spring.redis.timeout在1.x能夠設爲0表明無限超時時間,而2.x必需要設置一個大於0的數,按此配置後確實正常了一段時間,但仍是偶爾出現這問題redis

 

此時問題的症狀是:spring

timed out報錯的時機不肯定,但一個較高概率的狀況是,功能好久沒用時,第一次用報錯概率很高,而後第二次之後就正常springboot

報錯時一觸發功能就報錯,根本不像是超時,要等待一段時間才報錯spa

 

最終解決方法是,把redis驅動換回jedis,具體方法請百度這裏不展開it

PS:在lettuce的github的issue有幾個此問題的討論,不少人跟個人狀況也是同樣出現timed out但都找不到規律和緣由,並且討論到結尾也沒結果,只能認爲是lettuce的bug.百度

相關文章
相關標籤/搜索