# 缓存redis基础能力
<br/>
## 数据结构
- string
- hash
- list
- set
- zset
zset的结构? 跳表+压缩表
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
## 数据持久化
- rdb
- aof
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
## 缓存淘汰策略
- lru:最近最少使用的淘汰
allkeys:所有 volatile:设置过期时间的
- ttl:从已设置过期时间中挑选将要过期的淘汰
- random:数据中随机淘汰
allkeys:所有 volatile:设置过期时间的
- no-enviction:禁止驱逐,直接报错
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
## 单线程及原子性
- setnx
为什么能保证原子性
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>