互联网面试宝典

您现在的位置是: 首页 > Redis

问题详情

Redis 的大 key 有什么问题?Redis 查询百万博主的所有关注人怎么处理?

面试宝典 2023-06-12 Web前端开发工程师 90
1. Redis 的大 key 会占用大量内存,特别是在使用内存优化技术(如压缩、虚拟内存)时,会造成 CPU 负载压力和卡顿现象等问题。此外,在备份、持久化、复制等操作时也会带来一些不必要的麻烦。

2. 对于查询百万博主的所有关注人,可能会遇到两个问题:

- 由于关注人数较多,如果将所有关注人都存储在一个 Redis key 中,可能会导致该 key 过大,对 Redis 性能带来负面影响。此时可以采用 Redis 的列表(List)或集合(Set)类型,将关注人拆分为多个小型 key 存储,每个 key 表示一个博主的关注人列表或集合。
- 关注人数较多时,获取所有博主的关注人列表可能会比较耗时,导致查询效率低下。此时可以采用以下两种优化方式:

- 将博主按照一定规则分组,将每个博主的关注人列表存储在不同的 Redis 节点上。
- 在查询时采用分页方式,每次获取一定量的关注人,降低查询时的数据量。