原因是redis服务器配置的tcp-keepalive大于spring配置文件中的redis.timeout时间,
当连接存活时,spring再次发起连接导致原本连接被关闭,引发错误:Redis远程主机强迫关闭了一个现有的连接。
修改配置文件即可解决
需要注意的是tcp-keepalive单位是s,redis.timeout单位是ms。
例如:
redis.conf文件中修改
tcp-keepalive 5
springboot的application.yml中修改
redis.timeout 6000
即可修复该错误。