- Redis基本数据类型
- Redis 持久化机制
- 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题
- Memcache与Redis的区别都有哪些?
- 单线程的redis为什么这么快
- 为何Redis6.0之后又改用多线程呢?
- 知道什么是热key吗?热key问题怎么解决?
- redis的数据类型,以及每种数据类型的使用场景
- Redis 内部结构
- redis的过期策略以及内存淘汰机制
- Redis 为什么是单线程的
- Redis 集群方案应该怎么做?都有哪些方案?
- 有没有尝试进行多机redis 的部署?如何保证数据一致的?
- 对于大量的请求怎么样处理
- Redis 常见性能问题和解决方案?
- 为什么Redis的操作是原子性的,怎么保证原子性的?
- Redis事务
- Redis实现分布式锁
Redis基本数据类型
1、字符串对象String;2、列表对象list;3、哈希对象hash;4、集合对象set;5、有序集合对象
Redis 持久化机制
缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题
Memcache与Redis的区别都有哪些?
单线程的redis为什么这么快
为何Redis6.0之后又改用多线程呢?
Redis使用多线程并非是完全摒弃单线程,redis还是使用单线程模型来处理客户端的请求,只是使用多线程来处理数据的读写和协议解析,执行命令还是使用的单线程。这样做的目的是因为redis的性能瓶颈在于网络IO而非CPU,使用多线程能提升IO读写的效率,从而整体提高redis的性能。
知道什么是热key吗?热key问题怎么解决?
https://www.zhihu.com/collection/366256676
所谓热key问题就是,突然有几十万的请求去访问redis上的某个特定key,那么这样会造成流量过于集中,达到物理网卡上限,从而导致这台redis的服务器宕机引发雪崩。
针对热key的解决方案:
- 提前把热key打散到不同的服务器,降低压力
- 加入二级缓存,提前加载热key数据到内存中,如果redis宕机,走内存查询
redis的数据类型,以及每种数据类型的使用场景
Redis 内部结构
redis的过期策略以及内存淘汰机制
LRU算法:其核心思想是:如果一个数据在最近一段时间没有被用到,那么将来被使用到的可能性也很小,所以就可以被淘汰掉。
ttl:挑选将要过期的数据淘汰Redis 为什么是单线程的
Redis 集群方案应该怎么做?都有哪些方案?
有没有尝试进行多机redis 的部署?如何保证数据一致的?
对于大量的请求怎么样处理
• redis是一个单线程程序,也就说同一时刻它只能处理一个客户端请求;• redis是通过IO多路复用(select,epoll, kqueue,依据不同的平台,采取不同的实现)来处理多个客户端请求的
Redis 常见性能问题和解决方案?
``` - (1) Master 最好不要做任何持久化工作,如 RDB 内存快照和 AOF 日志文件
- (2) 如果数据比较重要,某个 Slave 开启 AOF 备份数据,策略设置为每秒同步一次
- (3) 为了主从复制的速度和连接的稳定性, Master 和 Slave 最好在同一个局域网内
- (4) 尽量避免在压力很大的主库上增加从库
- (5) 主从复制不要用图状结构,用单向链表结构更为稳定,即: Master <- Slave1 <- Slave2 <-
- Slave3…
```
为什么Redis的操作是原子性的,怎么保证原子性的?
Redis事务
Redis实现分布式锁
