Redis Lists
-
Works like a stack
-
String: 缓存、计数器、分布式锁等。
-
List: 链表、队列、微博关注人时间轴列表等。
-
Hash: 用户信息、Hash 表等。
-
Set: 去重、赞、踩、共同好友等。
-
Zset: 访问量排行榜、点击量排行榜等。
Persistence
AOF
- Append Only File, redis’s WAL
- Log the actual command, so it’s the full DB
| 模式 | write 是否阻塞? | fsync 是否阻塞? | 停机时丢失的数据量 |
|---|---|---|---|
| AOF_FSYNC_NO | 阻塞 | 可忽略的阻塞 | 操作系统最后一次对 AOF 文件触发 SAVE 操作之后的数据。 |
| (默认)AOF_FSYNC_EVERYSEC | 阻塞 | 不阻塞(异步线程) | 一般情况下不超过 2 秒钟的数据。 |
| AOF_FSYNC_ALWAYS | 阻塞 | 阻塞 | 最多只丢失一个命令的数据。 |
| AOF_FSYNC_BIO_WRITE | 不阻塞(异步线程) | 不阻塞(异步线程) | 丢缓存中的数据 |
RDB
- Redis DataBase File
- Compact, full memory snapshot
- Use
fork()andCoW