消息平台设计

目录

整体架构

消息流转流程介绍

消息中台业务能力

消息发送方式

消息发送策略

1.0版本设计

消息流程

发送/存储消息

更新消息已读/未读

拉取消息

消息存储策略

关系型模型设计

用户表 user

用户组表group

模板表template

策略表strategy

消息统计表 msg_stat

参数模型设计

发送消息

拉取消息

更新消息已读/未读

查询消息数量


随着公司发展,消息量和推送渠道越来越多,需要有一个对各类消息进行统一发送处理的平台。有利于对功能的收拢,以及提高业务需求开发的效率。

整体架构

消息流转流程介绍

发送方将消息内容和消息对象发送到媒介方,媒介方通过消息策略触达消息,最终产生回执到发送方。 

消息中台业务能力

消息清洗:清洗特殊词、敏感词以及潜在的威胁词句

消息过滤:过来不符合规则的消息 例如:内容为空或格式不正确

消息组装:根据消息模板组装消息体

消息去重:与历史同类型消息对撞,去掉重复发送的消息

消息分发:根据消息接收方及发送方式,将消息正确送到正确渠道

消息管理:提供消息撤回、消息重发、消息合并以及消息模板维护功能

消息统计:统计各维度消息,并衍生出更多有价值数据,比如通道覆盖率、折损分析 、发送趋势、点击率等等

智能处理:根据各消息类型及行为,生成智能处理策略(组装、发送、运维),简化处理流程

消息发送方式

没有消息模板时,存储消息内容及对象后,依照发送策略直接发送。

有消息模板时,根据消息模板生成发送对象。

消息模板创建方式有两种:

1、在管理后台配置

2、在第一次发送该消息时根据消息渠道、消息内容以及消息对象自动生成消息模板,下次发送同类型消息直接使用已创建的消息模板发送

消息发送策略

即时发送、定时发送、定速发送(例如:每秒推送条数)、并发发送(同时发送给多渠道)、补发消息(未送达补发/未点击补发)

1.0版本设计

目标:可以支持大部分消息发送场景,支持大部分数据查询场景

消息流程

发送/存储消息

 

更新消息已读/未读

拉取消息

消息存储策略

存储工具:mongo

大前提:按业务类型分表存储,各业务类型根据业务场景建立查询索引

存储结构:

字段名 类型 可以为空 备注
msgId Long N 消息编号(雪花算法或递增生成)
userId Long N 用户编号
groupId Long N 分组编号
bizCode int N 业务类型
templateId Long Y 模板编号
status int N
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
软件详细设计文档是指在需求分析、架构设计、模块划分等前期工作的基础上,对整个系统进行详细的设计说明文档。下面是针对企业消息平台的软件详细设计文档的大致内容: 1. 引言 简述软件详细设计文档的目的、范围、参考文献等。 2. 系统概述 介绍企业消息平台的系统功能、特性、用户对象等。 3. 功能模块设计 详细说明系统的各个模块的功能及实现方式,包括但不限于用户管理、消息发布、消息订阅、消息推送消息存储等模块。 4. 数据库设计 描述系统数据库的设计,包括数据表结构、字段、关系等。 5. 系统接口设计 详细说明系统的各个接口的功能及实现方式,包括但不限于与第三方系统接口、移动端接口、Web端接口等。 6. 系统安全设计 描述系统的安全设计,包括但不限于用户认证、访问控制、数据加密等。 7. 系统性能设计 描述系统的性能设计,包括但不限于系统架构、负载均衡、缓存策略等。 8. 系统部署设计 描述系统的部署设计,包括但不限于硬件配置、软件环境、网络拓扑等。 9. 系统测试设计 详细说明系统测试的方法、测试用例、测试环境等。 10. 运维管理设计 描述系统运维管理的设计,包括但不限于日志管理、监控报警、备份恢复等。 11. 总体设计说明 对整个系统的设计进行总体说明,包括但不限于系统架构、技术选型、开发规范等。 12. 附录 包括但不限于参考文献、术语表、缩写词表等。 以上是对企业消息平台软件详细设计文档的大致内容说明,具体的内容可以根据实际情况进行调整和补充。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jet-W

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值