模块八作业
思路:
1、首先用一个消息数据表存取生产者写入的所有数据
2、把生产者的写入的消息,异步线程按队列维度(一个队列 queue_id 一张表)同步到相应的表中
表名:消息数据表 tb_message
字段:
自增 ID:id
消息 ID(全局唯一):message_id,全局唯一,用雪花算法
主题名称:topic,
队列 id:queue_id,
消息内容:content,如果是对象的话,则为 Json 格式字符串
生产者 id:producer_id,
创建时间:create_time,
更新时间:update_time
索引:id,主键索引;message_id 唯一索引,因为需要根据 message_id 查询
消息队列表:tb_queue_XX
字段:
队列自增 id:id
消息 ID(全局唯一):message_id,
主题:topic
消息状态:status,
消费者:consumer_id
创建时间:create_time,
更新时间:update_time
索引:
id,主键索引
message_id 唯一索引,因为需要根据 message_id 查询
index(consumer_id,status),组合索引,消费者需要查询没有被消费的记录
评论