关于redis缓存时间设置可能导致的bug
2020-06-19 01:27:49 927
看到在项目代码中有人先调用redisTemplate的方法判断某个key是否存在,然后再调用redisTemplate的方法拿到这个key里的数据。
但是,在设置了key缓存时间的情况下,这个逻辑就会出错。
比如第一步这个key存在,但是紧接着key过期了,后面就会拿不到这个key,造成后面的逻辑出错
所以,建议先调用方法获取返回值,对返回值进行非空判断,然后再进行后续逻辑。
2020-06-19 01:27:49 927
看到在项目代码中有人先调用redisTemplate的方法判断某个key是否存在,然后再调用redisTemplate的方法拿到这个key里的数据。
但是,在设置了key缓存时间的情况下,这个逻辑就会出错。
比如第一步这个key存在,但是紧接着key过期了,后面就会拿不到这个key,造成后面的逻辑出错
所以,建议先调用方法获取返回值,对返回值进行非空判断,然后再进行后续逻辑。