rocketmq-baiji / rocketmq

Mirror of Apache RocketMQ
Apache License 2.0
4 stars 20 forks source link

这是第六组的提交 第二题 #13

Open kaixiangxiao opened 5 years ago

kaixiangxiao commented 5 years ago

我们的设计思路是:作为非持久化存储,因为内存空间有限,只提供一次消费服务,即message被消费之后就会被清除,不提供回溯功能。因此nextOffset一直是0,minOffset一直是0,maxOffset为该queue下message的个数。可以查询未被消费的消息中,最早消息的时间。 结构设计:ConcurrentHashMap<String/Topic/, List<LinkedBlockingQueue/Mem Queue/>>/Queue List/ topicQueueList LinkedBlockingQueue作为queue。List作为同topic下所有queue的容器,为每个list建立读写锁,只在queue变更时加写锁。

ISSUE #1