写点什么

架构实战 - 模块八 - 作业

作者:无名
  • 2022 年 1 月 01 日
  • 本文字数:287 字

    阅读完需:约 1 分钟

作业:设计消息队列存储消息数据的 MySQL 表格

 

作业要求

1 包括表名、字段、索引;

2 用文字描述设计思路和理由,例如:为什么设计某个索引?

3 一页 PPT 即可。

 

提示

1 需要考虑每个消息队列一张表,还是所有消息放一张表,里面加一个队列名字的字段。


方案如下:

 

不同消息队列是独立的,无需跨消息队列进行数据访问,所以采用每个消息队列一张表。

 

表名:topic_ + 队列名称

存储引擎:InnoDB

 

表结构如下



消息状态: 未处理 0,处理中 1,处理成功 2,处理失败 3。

    

主键:msg_id

复合索引:idx_producer_status_createddate 消费者用于拉取消息状态为 0,创建时间按顺序取得数据。

普通索引:expire_at 定时清理过期的数据。

用户头像

无名

关注

还未添加个人签名 2018.03.14 加入

还未添加个人简介

评论

发布
暂无评论
架构实战-模块八-作业