Apache Rocket请问namesrv中ordertopicconfig这个配置有什么作用啊?[阿里云消息队列MQ]

对于Apache RocketMQ请问namesrv中ordertopicconfig这个配置有什么作用啊?看了源码没明白,跟顺序消息有关吗?

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
1 条回复 A 作者 M 管理员
  1. 有关系,主要是顺序消息你是想保持顺序还是高可用。比如2个broker,每个broker8个队列,一共16个队列。key会hash到一个队列保证FIFO,但如果一个broker挂了,没有设置orderTopicConf,保证高可用,路由会更新成8个队列(16->8),key会重新hash,顺序积极乱了。如果设置了orderTopicConf,保证路由不变,仍然是16个队列,key hash到的队列不变,但发到挂了broker上的消息就会失败,就是保序不保证高可用。看看这个代码,就是顺序消息的路由更不更新,设置了后可以不更新,保证严格顺序。此回答整理自钉钉群”群2-Apache RocketMQ 中国开发者钉钉群“

  2. 楼主你好,是跟顺序消息相关的,Apache RocketMQ 中的 OrderTopicConfig 是在 NameServer 中用来保存顺序消息消费的配置信息的一个类。它可以配置指定 Topic 的顺序消息的消费模式,以及与顺序消息相关的其他参数。例如:

    OrderTopicConfig 中的 order 字段指定了顺序消息的消费模式,它有两个可选值:true:启用顺序消息消费模式。false:禁用顺序消息消费模式

    OrderTopicConfig 中的配置对于非顺序消息的消费不会有影响。只有在消费顺序消息时,才需要配置 OrderTopicConfig 中的相关参数