问题一:RocketMQ部署了一个三副本namesrv的场景,ip分别为a,b,c,这是正常情况吗?
RocketMQ部署了一个三副本namesrv的场景,ip分别为a,b,c,然后我在"xxxCluster"里添加了个topic,我发现我的Java程序进行produce的时候会报错"No topic route info in name server for the topic: TopicTest"
然后我分别使用“mqadmin topicList -n a:9876 -c xxxCluster ” “mqadmin topicList -n b:9876 -c xxxCluster ”"mqadmin topicList -n c:9876 -c xxxCluster " 发现三个命令得到的结果都不一样,一个什么也不输出,一个输出初始topic列表,一个输出有TopicTest的列表。
这是正常情况吗?
参考答案:
你部的是1个namesrv,3个不同集群的broker吗?
在集群A的创建的topic只属于集群A
关于本问题的更多回答可点击进行查看:
https://developer.aliyun.com/ask/612825
问题二:RocketMQ中plain_acl.yml里的全局白名单只能写ip吗?能不能写主机名?
RocketMQ中plain_acl.yml里的全局白名单只能写ip吗?能不能写主机名?我启动broker&proxy的时候会报错
java.lang.NumberFormatException: For input string: "broker"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.parseInt(Integer.java:615)
at org.apache.rocketmq.acl.plain.RemoteAddressStrategyFactory$RangeRemoteAddressStrategy.analysis(RemoteAddressStrategyFactory.java:192)
at org.apache.rocketmq.acl.plain.RemoteAddressStrategyFactory$RangeRemoteAddressStrategy.(RemoteAddressStrategyFactory.java:170)
at org.apache.rocketmq.acl.plain.RemoteAddressStrategyFactory.getRemoteAddressStrategy(RemoteAddressStrategyFactory.java:71)
at org.apache.rocketmq.acl.plain.PlainPermissionManager.load(PlainPermissionManager.java:144)
at org.apache.rocketmq.acl.plain.PlainPermissionManager.(PlainPermissionManager.java:85)
at org.apache.rocketmq.acl.plain.PlainAccessValidator.(PlainAccessValidator.java:35)
at org.apache.rocketmq.broker.BrokerController.initialAcl(BrokerController.java:971)
at org.apache.rocketmq.broker.BrokerController.recoverAndInitService(BrokerController.java:836)
at org.apache.rocketmq.broker.BrokerController.initialize(BrokerController.java:792)
at org.apache.rocketmq.broker.BrokerStartup.createBrokerController(BrokerStartup.java:240)
at org.apache.rocketmq.proxy.ProxyStartup.createBrokerController(ProxyStartup.java:229)
at org.apache.rocketmq.proxy.ProxyStartup.createMessagingProcessor(ProxyStartup.java:187)
at org.apache.rocketmq.proxy.ProxyStartup.main(ProxyStartup.java:79)
看起来是加载到了broker相关的字段,我的plain_acl.yml里包含broker的地方只有:
globalWhiteRemoteAddresses:
- broker-a-s-0.broker-a-s.pscp-rocketmq.svc.cluster.local
- broker-b-s-0.broker-b-s.pscp-rocketmq.svc.cluster.local我用4.9.8没有这个问题,有5.1.4有
参考答案:
域名不支持, 会分析是否连续的ip,或者 1.1.1.* 这种 ,
关于本问题的更多回答可点击进行查看:
https://developer.aliyun.com/ask/612818
问题三:RocketMQ5.x版本顺序消息示例注释的,这个消费者分组为顺序投递模式怎么确定?
RocketMQ5.x版本顺序消息示例注释的,“消费顺序消息时,需要确保当前消费者分组是顺序投递模式,否则仍然按并发乱序投递”。这个消费者分组为顺序投递模式怎么确定?示例说使用PushConsumer消费顺序消息,只需要在消费监听器处理即可。我按示例服务启动的时候debug,创建的是StandardConsumeService
参考答案:
我这边是在创建消费者的时候,将消费者的线程数量设为1,就能顺序消费了。
官网有说明,顺序队列的限制,同个进程下一个消费组只能有一个消费者实例对象。创建group的时候可以指定是否顺序,grpc 的客户端是以服务侧的配置为准。你创建的是顺序group,启动后就会按照顺序的方式进行消费,这个是官网的使用建议。目前我是这么处理的,一切良好,一个进程内同个Topic、N个消费组。
关于本问题的更多回答可点击进行查看:
https://developer.aliyun.com/ask/612813
问题四:RocketMQ中sh mqadmin 是不是已经被删除了?
RocketMQ中sh mqadmin getAccessConfigSubCommand 是不是已经被删除了?我用这个会输出 The sub command getAccessConfigSubCommand not exist。那现在有什么办法查看broker的权限情况吗,直接去看plain_acl文件吗?
参考答案:
登到broker机器上查看
关于本问题的更多回答可点击进行查看:
https://developer.aliyun.com/ask/612809
问题五:RocketMQ99 5.1.0版本设置这个参数没有用,总说磁盘满了,如何解决?
RocketMQ中mqbroker.cmd -n localhost:9876 diskMaxUsedSpaceRatio=99 5.1.0版本设置这个参数没有用,总说磁盘满了?
参考答案:
磁盘满了看清除一些内容 或者扩容
关于本问题的更多回答可点击进行查看: