由站内信出发

  • 一开始设计的还挺麻烦的,学长说不能一口吃成胖子,一步一步来

站内信

简介

  • 站内信不同于电子邮件,电子邮件通过专门的邮件服务器发送、保存,而站内信是系统内的消息,其实就是通过数据库插入记录来实现的。
  • 在许多网站系统里都有站内信功能的实现,其实也相当于把用户与用户之间的互动以及管理员与用户之间的通知这一部分业务抽离了出来,不分散在对应的业务逻辑中了。
  • 那么站内信就需要有两个功能:
    1. 点对点的消息传送,主要是用户给用户发送站内信

    2. 点对面的消息传送,主要是管理给若干用户(全部或满足一定条件)发送站内信,如公告

设计环境

  • 从用户规模可以分为:少量(几百人),中量(上万用户),大量(百万用户)不同的站内信架构,消耗存储空间,和效率也是不同的。为了以后的长远发展,至少也要从中量用户开始设计。
  • 只谈论站内信的话,表目前设计为两张:
  • 第一张为msg_content表,具体是存消息内容:
    msg_content表
  • 第二张为message表,主要存储发送方与接收方:
    message表
  • 流程图设计:
    站内信流程设计1
    2月6日学长让我参考知乎的站内信通知设计,从新再改一改

    知乎通知数据结构
  • 之后从新设计了表:
    notice
    notice_target
    notice_send
  • 流程也更加详细:
    站内信流程设计2
最后修改:2021 年 02 月 07 日