在$HOME\store\config目录下面存储各类config文件,包括:consumerOffset.json、delayOffset.json、subscriptionGroup.json、topics.json四类config文件。
topics.json文件由TopicConfigManager类解析并存储;存储每个topic的读写队列数、权限、是否顺序等信息。
consumerOffset.json文件由ConsumerOffsetManager类解析并存储;存储每个消费者Consumer在每个topic上对于该topic的consumequeue队列的消费进度;
delayOffset.json文件由ScheduleMessageService类解析并存储;存储对于延迟主题SCHEDULE_TOPIC_XXXX的每个consumequeue队列的消费进度;
subscriptionGroup.json文件由SubscriptionGroupManager类解析并存储;存储每个消费者Consumer的订阅信息。
各类图机构如下:
1 ScheduleMessageService执行延迟消息
该类除了解析并存储delayOffset.json文件之外,还有一个重要的任务,就是定时执行延迟消息的任务。
在load方法中,将这些级别