rocket mq4.8.0,自动创建话题设置为false,客户端一直打warn,no topic?

rocket mq4.8.0,自动创建话题设置为false,客户端一直打warn,no topic TBW102, 大佬们有知道原因或者解决办法的吗?image.png

展开
收起
真的很搞笑 2023-07-03 16:14:57 167 发布于黑龙江 分享
分享
版权
举报
3 条回答
写回答
取消 提交回答
  • 对于RocketMQ 4.8.0版本,当自动创建话题设置为false时,出现"no topic TBW102"的警告可能是由于以下原因之一:

    1. 未手动创建话题:当自动创建话题设置为false时,如果没有手动创建话题,当客户端向不存在的话题发送消息时,就会出现该警告。请确保在使用该话题之前,已经通过控制台或命令行工具手动创建了相应的话题。

    2. 话题名称错误:确保在发送消息时,指定的话题名称与实际创建的话题名称匹配。验证一下代码中的话题名称是否正确拼写、大小写是否一致,并且与手动创建的话题名称相匹配。

    3. 客户端配置问题:检查客户端的配置文件,确保自动创建话题参数(autoCreateTopicEnable)设置为false,并保存后重新启动客户端。还要确保所有的Broker和NameServer都已配置正确并在运行。

    2023-07-14 14:19:53 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
  • 北京阿里云ACE会长

    在 RocketMQ 4.8.0 中,如果自动创建话题设置为 false,当客户端尝试发送消息时,如果该话题不存在,会出现 "No topic" 的警告日志。这是因为客户端无法找到该话题,而不是因为话题创建失败。

    为了避免这个警告日志,可以在客户端启动时先手动创建话题。可以使用 DefaultMQAdminExt 类中的 createTopic 方法来创建话题。例如,以下是一个示例:

    ini
    Copy
    DefaultMQAdminExt admin = new DefaultMQAdminExt();
    admin.setNamesrvAddr("127.0.0.1:9876");
    admin.start();
    TopicConfig topicConfig = new TopicConfig("TopicTest");
    topicConfig.setReadQueueNums(4);
    topicConfig.setWriteQueueNums(4);
    admin.createTopic("TopicTest", topicConfig);
    admin.shutdown();
    在这个示例中,我们创建了一个名为 "TopicTest" 的话题,并设置了读写队列的数量。这个话题可以在客户端启动时手动创建,以避免 "No topic" 警告日志的出现。

    2023-07-14 08:02:41 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
  • 你好,楼主这是因为你设置了false后,当客户端请求一个不存在的topic后,服务端不会自动创建这个topic,所以报了 no tpic,可以手动创建一下这个topic哦。

    2023-07-03 16:53:06 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论

涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系产品 Serverless 化。RocketMQ 一站式学习:https://rocketmq.io/

收录在圈子:
+ 订阅
阿里云 云原生应用平台 肩负阿里巴巴集团基础设施云化以及核心技术互联网化的重要职责,致力于打造稳定、标准、先进的云原生产品,成为云原生时代的引领者,推动行业全面想云原生的技术升级,成为阿里云新增长引擎。商业化产品包括容器、云原生中间件、函数计算等。
还有其他疑问?
咨询AI助理
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等