RocketMQ rocketmq-tools管理主题

RocketMQ rocketmq-tools管理主题

环境和软件版本

Win10IDEAJdk1.8rocketmq 5.1.3rocketmq-tools 5.1.3

引入依赖

xml 复制代码
<dependency>
    <groupId>org.apache.rocketmq</groupId>
    <artifactId>rocketmq-tools</artifactId>
    <version>5.1.3</version>
</dependency>

增删改查

  1. 启动rocketmq
sh 复制代码
mqnamersrv.cmd
mqbroker.cmd -n localhost:9876
  1. 测试代码

创建/更新主题

java 复制代码
    @Test
    @DisplayName("创建/修改主题")
    public void rocketMQCreateTopic() throws Exception {
        DefaultMQAdminExt adminExt = new DefaultMQAdminExt();
        adminExt.setNamesrvAddr("localhost:9876");
        adminExt.start();
        TopicConfig topicConfig = new TopicConfig();
        topicConfig.setTopicName("testTopic0");
        topicConfig.setReadQueueNums(8);
        topicConfig.setWriteQueueNums(8);
        topicConfig.setPerm(6);
        Set<String> brokerAddress = CommandUtil.fetchMasterAddrByClusterName(adminExt, "DefaultCluster");
        for (String address : brokerAddress) {
            System.out.printf("Broker地址:%s\n", address);
            adminExt.createAndUpdateTopicConfig(address, topicConfig);
        }
    }

查询主题

java 复制代码
    @Test
    @DisplayName("查询主题")
    public void rocketMQGetTopic() throws Exception {
        DefaultMQAdminExt adminExt = new DefaultMQAdminExt();
        adminExt.setNamesrvAddr("localhost:9876");
        adminExt.start();
        TopicList topicList = adminExt.fetchAllTopicList();
        Set<String> topicNameList = topicList.getTopicList();
        for (String topicName : topicNameList) {
            System.out.printf("主题:%s\n", topicName);
        }
    }

删除主题

java 复制代码
    @Test
    @DisplayName("删除主题")
    public void rocketMQDeleteTopic() throws Exception {
        DefaultMQAdminExt adminExt = new DefaultMQAdminExt();
        adminExt.setNamesrvAddr("localhost:9876");
        adminExt.start();
        adminExt.deleteTopic("testTopic0", "DefaultCluster");
        // 删除之后再查一遍
        TopicList topicList = adminExt.fetchAllTopicList();
        Set<String> topicNameList = topicList.getTopicList();
        for (String topicName : topicNameList) {
            System.out.printf("主题:%s\n", topicName);
        }
    }
相关推荐
JimmtButler2 天前
RocketMQ本地编译
后端·rocketmq
JimmtButler2 天前
Namesrv解析
后端·rocketmq
阿里云云原生3 天前
阿里云两大 AI 原生实践荣获 2025 年度 OSCAR “开源+”典型案例
apache·rocketmq
阿里云云原生3 天前
PalmPay 携手阿里云 RocketMQ,共建非洲普惠金融“高速通道”
rocketmq
阿里云云原生5 天前
Apache RocketMQ × AI:面向 Multi-Agent 的事件驱动架构
apache·rocketmq
周杰伦_Jay5 天前
【 RocketMQ 全解析】分布式消息队列的架构、消息转发与快速实践、事务消息
分布式·算法·架构·rocketmq·1024程序员节
程序员老徐6 天前
RocketMQ源码详解(消费端启动流程)
rocketmq
阿里云云原生8 天前
2025 OSCAR丨与创新者同频!Apache RocketMQ 邀您共赴开源之约
rocketmq
阿里云云原生10 天前
活动邀请丨2025 全球机器学习技术大会
rocketmq
熊文豪10 天前
Apache RocketMQ在Windows下的保姆级安装教程(含可视化界面安装)
rocketmq