点赞和取消点赞实现Redis缓存(只思路)

思路:点赞、取消点赞 ——> Redis ——> (每两个小时)存到数据库(MySQL),所以就相当于每次查询或者存储都需要先经过Redis,而查询的目的是为了判断用户的点赞状态(已点赞or未点赞),并不是传递给前端。

Redis数据库中需要有的字段:

  • 被点赞作品的id、
  • 点赞人员的id、
  • 点赞状态(已点赞or未点赞)

采用的Redis存储结构为Hash,因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态

点赞作品的id和点赞状态数据需要先存入Redis,而对于数据库中的创建时间和更新时间,只在存储的时候有用,所以也就在Redis存到数据库时new Date() + 2个小时即可。

设置点赞状态,1为点赞,0为未点赞;同时采用 被点赞作品id ::点赞人员的id的存储形式作为key,值为点赞状态。

参考:点赞模块设计 - Redis缓存 + 定时写入数据库实现高性能点赞功能 (juejin.cn)

posted @   intTom  阅读(493)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
点击右上角即可分享
微信分享提示