前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >朋友圈 解决方案 2022年8月12日正在优化中

朋友圈 解决方案 2022年8月12日正在优化中

作者头像
收心
发布2022-08-23 17:24:22
4830
发布2022-08-23 17:24:22
举报
文章被收录于专栏:Java实战博客Java实战博客

参考:http://t.zoukankan.com/hujingnb-p-12389810.html

本人对上述功能进行增强,性能优化

需求:

  1. 发朋友圈
  2. 评论动态
  3. 查看朋友圈(只能查看好友的)
  4. 查看评论(只能查看共同好友的)
  5. 新消息小红点
  6. 局部用户可见
  7. X天可见

DB表设计

全局朋友圈表:id、发布人id、发布时间、朋友圈内容、点赞数(可不要)、评论数(可不要)

全局评论表:朋友圈id、回复人id、评论人id、评论内容、评论时间、上次刷新时间

个人独立收件箱:朋友圈id、发布人id、发布时间、上次刷新时间

个人独立评论表:朋友圈id、回复人id、评论人id、评论内容、评论时间、上次刷新时间

Redis:用户受众人:

查看朋友圈

  1. 朋友圈动态查找可以查看的动态(包含用户ID和公共ID)
  2. 朋友圈评论查看相关评论(包含用户ID和公共ID)
  3. 动态表和评论表根据ID将相关数据取出

前两步走索引, 第三步直接根据主键获取, 而且拿出来的没有无用数据

数据维护的操作(一下所有操作官方特判)

发动态

  1. 查找用户所有好友
  2. 将动态添加到所有好友的朋友圈动态表中(包括用户自己)

删动态

  1. 查找用户的所有好友
  2. 将动态从好友的朋友圈动态表中删除
  3. 将动态从好友的朋友圈评论表中删除

发评论

  1. 查找用户的所有好友A
  2. 朋友圈动态中找出A可以查看此动态的好友B
  3. 若评论是回复某用户, 则从B中过滤不是回复用户好友的用户, 得到C
  4. 将数据添加到C朋友圈评论表中

删评论

  1. 查找用户的所有好友A
  2. 朋友圈评论中找出A中可以查看此评论的用户B
  3. 删除B朋友圈评论数据

添加好友

  1. 找到好友的所有动态, 添加到用户的朋友圈动态
  2. 找到好友在用户朋友圈动态中所有动态下的相关评论(包括评论和被评论), 并从中过滤掉用户不可查看的评论, 同步好友圈评论

删除好友

  1. 找到好友在用户朋友圈动态中所有动态下的相关评论, 删除用户好友圈评论数据
  2. 找到好友的所有动态, 从用户的朋友圈动态中删除

特殊说明: 以上文章,均是我实际操作,写出来的笔记资料,不会盗用别人文章!烦请各位,请勿直接盗用!转载记得标注来源!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 需求:
  • DB表设计
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档