Redis过期策略和内存淘汰机制

在日常开发中,我们使用 Redis 存储 key 时通常会设置一个过期时间,但是 Redis 是怎么删除过期的 key,而且 Redis 是单线程的,删除 key 会不会造成阻塞。要搞清楚这些,就要了解 Redis 的过期策略和内存淘汰机制。

阅读更多

缓存穿透、缓存击穿、缓存雪崩及解决方案

系统中常常用Redis来做缓存,极大的提升了系统性能和效率,但同时也存在一些问题。其一是数据一致性问题,严格意义上来讲,只要用到缓存,那就会有一致性问题,这是无解的。另一个问题就是本文要讲的缓存穿透、缓存击穿、缓存雪崩,不仅仅局限于Redis,其他方式实现的缓存,也存在着三个问题。

阅读更多

Redis工具类封装RedisUtils

​ 现在很多项目都会用到Redis,本文将讲解在SpringBoot项目中如果封装一个使用的Redis工具类。SpringBoot项目集成Redis相当简单,只需要pom中加入对应依赖:

1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

yml中,配置好spring.redis.host,spring.redis.port即可。

阅读更多