写点什么

架构实战营模块 8 作业

作者:陈斌
  • 2024-02-04
    广东
  • 本文字数:335 字

    阅读完需:约 1 分钟

消息队列表设计

表名设计:

t_{业务种类}_queue

字段:

id 消息 ID,自增主键,long 类型 ;

creat_time 创建时间 long 类型

accepted 消息接受方

sender 消息发送方

msg_context 消息内容

is_comsumed 是否已经被消费 0,未消费,1 已经被消费。

is_expired 是否已经过期 0 未过期,1 已经过期

索引设计

id 主键索引

create_time 一般索引 增加查询消息的速度

消费消息时,批量查询消息,例如一次性批量查询 10 条消息,where id>xx order by create_time limit 10

is_comsumed 一般索引 增加查询消息的速度

快速查询还有多少条消息未消费: count(*) where is_comsumed = 0

is_expired 一般索引 淘汰消息使用该索引


每个 topic 消息一张表,原因:

1、可以支持较多消息的数量。

2、提升可维护性,方便运维根据表名查看不同种类的数据。

用户头像

陈斌

关注

还未添加个人签名 2019-01-03 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营模块 8 作业_#架构实战营_陈斌_InfoQ写作社区