zoukankan      html  css  js  c++  java
  • 网页评论的数据库设计

    转发自https://blog.csdn.net/lm1622/article/details/77950133

    1.由用户发表作品  其他已注册用户 在浏览个用户发表的作品时可以进行 点赞 评论 (同时可以撤销点赞)

    2.同时对评论的内容也可以进行相应的点赞 (同时可以撤销点赞)

    3.以及后期规划 对评论的用户可以进行相应的回复

    基于以上三点 我查了一些网上资料

    最终决定 设计以下 三张表

    用户表就不多说了 id account nickname password 等等

    评论表(comment)设计如下:

    表字段字段说明

    id主键

    compose_id作品id

    compose_type作品类型

    content评论内容

    from_userid评论用户id

    回复表(reply)设计:

    表字段字段说明

    id主键

    comment_id评论id

    reply_id回复目标id

    reply_type回复类型

    content回复内容

    from_userid回复用户id

    to_userid目标用户id

    点赞表(zan)设计如下:

    表字段字段说明

    id主键

    type_id对应的作品或评论的id

    type点赞类型  1作品点赞  2 评论点赞 3....

    user_id用户id

    status点赞状态  0--取消赞   1--有效赞

    对于 评论表来说  它是挂载于 作品之下的  。  1个作品有多个评论。

    而回复表,由于业务场景是 不管对评论表进行回复还是对于回复进行回复  它都是属于 评论表下的子集 不会出现子子孙孙这种树形结构。 所以在回复表设置一个父亲

    comment_id,  有reply_type 来区分  该条回复是针对评论进行回复 还是针对回复进行回复

    对于 点赞表  ---考虑到  点赞可以对作品进行点赞 也可以对评论进行点赞  设计type 来区分 该点赞类型( type )是针对 作品还是评论 以及后期有可能的需求 回复点赞等等

    由于公司没用到redis 直接操作数据库mysql, 一般来说 对于作品或文章来时 点赞与取消赞  是一件很频繁操作的事件  ,这样数据量一大感觉  频繁的更新会很耗服务器性能。目前  想法是 用个redis做缓存,频繁点赞的更新操作 放到redis中 一个放(用户最终的点赞状态) 一个放待更新待插入到数据库的点赞状态,通过一个定时任务去 跑 待更新待插入的数据同步到数据中

    对于评论 想法是 先取拉取数据到缓存中  用缓存输出到页面。

    参考文章

    http://blog.csdn.net/ztchun/article/details/71106117点击打开链接

    http://www.jianshu.com/p/f9e27a96da89点击打开链接



    作者:泛酸的桂花酒
    链接:https://www.jianshu.com/p/c5806959cef8
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    计算机网络-TCP的三次握手与四次挥手
    计算机网络-XSS及CSRF攻击防御
    计算机网络-HTTP与HTTPS的区别
    装饰器模式和代理模式的区别
    23种设计模式总结
    单例模式详解
    常用设计模式总结
    PG-用户|角色管理
    PG-表空间管理
    TiDB-性能测试
  • 原文地址:https://www.cnblogs.com/xingkongzhizhu/p/12370367.html
Copyright © 2011-2022 走看看