第八周作业
主要设计以下表:
一、队列消息表
create table queues_{队列名称}(
message_id varchar(40) primary key COMMENT '消息 id,采用数据库的 uuid()',
message varchar(200) COMMENT '消息正文',
create_time datetime
)
每个队列一张表,这样每个消息队列表的消息条数不会太多
二、queues_consumer 每个队列对应的消费者
create table queues_consumer(
id int(10) auto_increment primary key,
queues_name varchar(50) COMMENT '队列名称',
consumer_id int(10) COMMENT '生产者 id',
create_time datetime,
index(queues_name)
)
每次需要通过队列名称查找其消费者,所以在 queues_name 上加索引
三、queues_{队列名称}_message_consumer,每个消息,消费者的消费记录
create table queues_{队列名称}_message_consumer(
id int(10) auto_increment primary key,
message_id varchar(40) COMMENT '消息 id',
consumer_id int(10) COMMENT '生产者 id',
create_time datetime,
index(consumer_id)
)
需要根据 consumer_id 来查看消费了哪些消息,所以在 consumer_id 上增加索引
评论