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);
        }
    }
相关推荐
weisian15120 小时前
Java并发编程--51-详解RocketMQ:高可靠消息中间件的核心特性与生产实践
java·rocketmq·java-rocketmq·事务消息
qq_2975746721 小时前
RocketMQ 系列文章(高级篇第 4 篇):消息过滤、延迟消息与死信队列深度应用实战
rocketmq
开发者联盟league2 天前
在windows上安装和运行rocketmq
windows·rocketmq
冷小鱼3 天前
消息队列(MQ)技术全景科普:从选型到AI+未来
人工智能·kafka·rabbitmq·rocketmq·mq·pulsar
筠·4 天前
Docker Compose 部署 RocketMQ
docker·rocketmq·java-rocketmq
Rcnhtin7 天前
RocketMQ
java·linux·rocketmq
qq_297574678 天前
RocketMQ 系列文章(高级篇第 1 篇):高可用集群部署与运维监控实战指南
运维·rocketmq·java-rocketmq
成为大佬先秃头9 天前
解决RocketMQ-Dashboard开启登录认证后不生效
rocketmq
卷毛的技术笔记10 天前
从“拆东墙补西墙”到“最终一致”:分布式事务在Spring Boot/Cloud中的破局之道
java·spring boot·分布式·后端·spring cloud·面试·rocketmq
qq_2975746710 天前
RocketMQ 系列文章(进阶篇第 4 篇):死信队列与延迟消息实战指南
rocketmq