首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >实际上 ConsumeFromWhere 的枚举类源码中还有另外三个值?

实际上 ConsumeFromWhere 的枚举类源码中还有另外三个值?

提问于 2021-11-27 05:33:56
回答 0关注 0查看 94

实际上 ConsumeFromWhere 的枚举类源码中还有另外三个值,但是已经被弃用了。但是这个配置仅对新的 ConsumerGroup 有效,已经存在的 ConsumerGroup 会继续按照上次消费到的 Offset 继续消费。

其实也很好理解,假设有 1000 条消息,你的服务已经消费到了 500 条了,然后你上线新的东西将服务重新启动,然后又从头开始消费了?这不扯吗?

这里我们传的是 *,代表订阅所有类别的消息。当然我们也可以传入 tagA || tagB || tagC 这种,代表我们只消费打了这三种 Tag 的消息。

RocketMQ 会根据我们传入的这两个参数,构造出 SubscriptionData ,放入一个位于内存的 ConcurrentHashMap 中维护起来,简单来说就一句话,把这个订阅的 Topic 缓存下来。

在缓存完之后会进行一个比较关键的操作,那就是开始向所有的 Broker 发送心跳。Consumer 客户端会将:

回答

和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档