更新缓存操作

longlinji / 2023-05-12 / 原文

需求分析:

问题描述:

并发操作redis,发现redis连接数增长异常(呈直线上升)

原因分析:

发现redis更新时,没有处理好之前的连接缓存,而是直接替换,导致旧的缓存没有及时删除。

修改方案:

1.更新时,先关闭之前的连接,再替换

2.只更新redis配置修改的连接

update:

之前的连接:

比较(ip,password,timeOut)的hash,不一致则更新。

dele:差集 old-new=dele

add:差集 new-old=add

3.考虑连接正在使用的情况

操作连接池,先关闭连接,再更新配置,创建新连接