如何实现一个点赞功能?


一、介绍

点赞一般出现在朋友圈、微博、动态等场景,基本操作有点赞、取消点赞、查询点赞数量、判断自己是否点过赞等

二、实现

使用Redis的set结构简单实现,key存储帖子id,value存储点赞用户的uid
点赞sadd <key> <uid>
取消点赞srem <key> <uid>
查询点赞用户列表smembers <key>
查询点赞数量scard <key>
判断自己是否点过赞sismember <key> <uid>

三、问题

1、用Redis存储数据的话,如果丢数据了怎么办,需要配合MySQL持久化数据吗?

  • Redis不单单是作为缓存使用,也可以持久化使用。它提供了两种持久化的方式,分别是RDB(Redis DataBase)和AOF(Append Only File)
  • 并且如果我们要用MySQL持久化数据的话,还要考虑性能、数据一致性等问题

文章作者: GaryLee
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 GaryLee !
  目录