美文网首页
基于订阅模式的系统站内消息系统数据库设计

基于订阅模式的系统站内消息系统数据库设计

作者: 田文健 | 来源:发表于2019-12-07 09:08 被阅读0次

网站的站内消息可能有单播,组播,广播。比如余额提醒是单播,vip用户消息是组播,系统通知是广播。一般情况下这些可能会分表设计。对于已读和未读逻辑而言,单播和广播比较简单,不需要太多的数据存储。对于组播就比较麻烦,在发布消息时,需要保存用户的未读状态。如果一些用户已经放弃了这个网站,那么相当于存了一些无用的数据,而且在发布消息时,数据库IO访问会比较频繁。

基于订阅模式设计

灵感来自于MQTT协议的订阅发布系统。每一条消息有一个主题,每个用户默认关注自己主题为自己ID和系统广播的消息。对于分组的用户,每组用户关注特定的主题。这样在用户读消息时,只需要保存用户读了某一条消息,未保存意味着未读。

消息表


消息表

已读状态表


已读状态

相关文章

  • 基于订阅模式的系统站内消息系统数据库设计

    网站的站内消息可能有单播,组播,广播。比如余额提醒是单播,vip用户消息是组播,系统通知是广播。一般情况下这些可能...

  • ACP互联网架构认证笔记-MQ消息队列服务

    MQ是消息服务中间件,基于高可用分布式集群技术,是消费模式基于发布订阅模式的消息系统。支持Java,C++以及.N...

  • RocketMQ的设计理念和目标

    设计理念 RocketMq设计基于主题的发布订阅模式,其核心功能包括消息发送、消息存储、消息消费,整体设计追求简单...

  • 站内信设计方案

    一、背景站内信的设计基调 二、需求描述 三、系统设计功能设计 四、系统流程发送站内信获取站内信列表获取未读站内信数...

  • 广播概述

    Android应用可以从Android系统和其他Android应用发送或接收广播消息,类似于发布 - 订阅设计模式...

  • aliyun-ons (node版)之 集群模式下模拟广播消费

    说在前头的概念 MQ 是基于发布订阅模型的消息系统。 消息的订阅方订阅关注的 Topic,以获取并消费消息。 由于...

  • 补习系列(13)-springboot redis 与发布订阅

    一、订阅发布 订阅发布是一种常见的设计模式,常见于消息系统的场景。如下面的图: [图来自百科]消息发布者是消息载体...

  • kafka(一)

    Apache Kafka 发布与订阅消息系统 kafka介绍: Kafka就是一款基于发布与订阅的梢息系统。它一般...

  • kafka集群创建

    kafka简介 kafka的优点 Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下: 1、 ...

  • Pulsar Connector 预览篇

    前言 Apache Pulsar 是分布式发布订阅消息系统。优秀的消息系统应该具备完整的周边生态(包括数据库、缓存...

网友评论

      本文标题:基于订阅模式的系统站内消息系统数据库设计

      本文链接:https://www.haomeiwen.com/subject/gnwygctx.html