Redis-Set的应用
2026年2月28日大约 1 分钟
Redis-Set的应用
之前我们提到过,Set是Redis中的一种数据结构,类似于Java中的Set集合,具有以下特点:
- 无序:Set中的元素没有顺序。
- 不重复:Set中的元素不能重复。
- 支持集合操作:可以进行交集、并集、差集等集合操作。
因此它就很适合存储一些不需要顺序且不允许重复的数据。
点赞功能
在社交媒体平台中,点赞功能是非常常见的。我们可以使用Redis的Set来实现点赞功能。
- 业务流程:
- 用户点击点赞按钮时,将用户ID添加到对应的Set中。
- 用户点击取消点赞按钮时,将用户ID从对应的Set中移除。
- 查询点赞数时,获取Set的大小即可。(当然也可以存到MySQL数据库中,然后去MySQL查询点赞数)
- 查询用户是否点赞时,判断用户ID是否在Set中即可。
共同关注
在社交媒体平台中,用户之间的共同关注也是一个常见的功能。我们可以使用Redis的Set来实现共同关注功能。
- 业务流程:
- 用户A关注用户B时,将用户B的ID添加到用户A的Set中。
- 用户A取消关注用户B时,将用户B的ID从用户A的Set中移除。
- 查询共同关注时,获取用户A和用户B的Set的交集即可。
stringRedisTemplate.opsForSet().intersect(keyA, keyB);// 获取用户A和用户B的共同关注列表