Windows安装RocketMQ

1、下载安装包

下载地址:https://rocketmq.apache.org/download

 2、 解压、配置环境变量

ROCKETMQ_HOME=RocketMQ安装地址

 3、 用cmd页面启动mqnamesrv.cmd

命令,start mqnamesrv.cmd

 4、 用cmd页面启动mqbroker.cmd

 命令:start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true

启动闪退,解决:

 

将该文件夹的所有文件删除,非正常关闭会出现错误。 

 5、 下载可视化界面

百度网盘地址:https://pan.baidu.com/s/1jU36FONVndj4bZqCvmFwSw

提取码:4oru 

6、 生产者发送消息

6.1 导入Maven依赖

<dependency>
    <groupId>org.apache.rocketmq</groupId>
    <artifactId>rocketmq-client</artifactId>
    <version>5.0.0</version>
</dependency>

6.2 生产者发送消息

6.2.1 同步发送

同步发送使用场景:发送短信【对消息是否传递非常敏感,所以要确定是否收到】

public class 同步通信 {
    public static void main(String[] args) throws Exception {
        DefaultMQProducer producer = new DefaultMQProducer("BIO"); // 新建生产者

        producer.setNamesrvAddr("127.0.0.1:9876"); // 设置注册中心地址---nameServer
        producer.start(); // 启动生产者

        Message msg = new Message("Base", "Base-1", "您好啊,生产者同步通信发来消息".getBytes(StandardCharsets.UTF_8)); // 发送消息,(topic, tags, byte[] msg)

        SendResult result = producer.send(msg); // 发送消息
        System.out.println(result.toString()); // 打印发送消息内容

        producer.shutdown(); // 关闭连接

    }
}

6.2.2 异步发送

异步发送使用场景:下订单【订单下了就不理了,其余的减库存,新增订单等让后台自己去做,MQ通过回调函数告诉我是否流程正确就可以了;对响应性能十分敏感】

public class 异步通信 {
    public static void main(String[] args) throws Exception{
        DefaultMQProducer producer = new DefaultMQProducer("AIO");
        producer.setNamesrvAddr("127.0.0.1:9876");

        producer.start();


        for (int i = 0; i < 100; i++) {
            Message msg = new Message("AIO", "AIO-1", ("您好啊,异步生产者发来消息" + (i+1)).getBytes(StandardCharsets.UTF_8));
            producer.send(msg, new SendCallback() { // 不同于同步通信只有这一步,多加了回调函数
                @Override
                public void onSuccess(SendResult sendResult) {
                    System.out.println("成功发送消息," + sendResult.toString());
                }

                @Override
                public void onException(Throwable throwable) {
                    System.out.println("消息发送失败," + throwable.toString());
                }
            });
        }

        TimeUnit.SECONDS.sleep(5);

        producer.shutdown();
    }
}

6.2.3 单向发送

单向发送使用场景:日志记录【丢几条日志也无所谓,强大的MQ一般也不会丢】

public class 单向通信 {
    public static void main(String[] args) throws Exception{
        DefaultMQProducer producer = new DefaultMQProducer("One-way");
        producer.setNamesrvAddr("127.0.0.1:9876");

        producer.start();
        Message msg = new Message("OneWay", "OneWay-1", "您好啊,单向通信生产者发来消息".getBytes(StandardCharsets.UTF_8));
        producer.sendOneway(msg); // 不同于同步通信,这里设置为oneway发送方式即可

        producer.shutdown();
    }
}

6.3 消费者消费消息

public class 消费消息 {
    public static void main(String[] args) throws Exception{
        DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("Consumer-1");

        consumer.setNamesrvAddr("127.0.0.1:9876");
        consumer.subscribe("AIO", "*");

        consumer.registerMessageListener(new MessageListenerConcurrently() {
            @Override
            public ConsumeConcurrentlyStatus consumeMessage(List<MessageExt> list, ConsumeConcurrentlyContext consumeConcurrentlyContext) {
                for(MessageExt msg : list) {
                    System.out.println(new String(msg.getBody()));
                }
                return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;
            }
        });

        consumer.start();
        System.out.println("消费者,订阅主题为:AIO,持续消费消息中......");

    }
}

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windows安装RocketMQ的步骤如下: 1. 首先,您需要下载RocketMQ。您可以通过访问RocketMQ的官方网站或者GitHub页面来获取下载链接。 2. 下载完成后,解压下载文件到您指定的目录。 3. 在解压后的目录中,您可以找到一个bin文件夹。进入该文件夹并双击运行runbroker.cmd文件来启动RocketMQ broker。 4. 同样,在解压后的目录中,您可以找到一个bin文件夹。进入该文件夹并双击运行runserver.cmd文件来启动RocketMQ nameserver。 5. 至此,RocketMQ已经成功安装并运行在您的Windows系统上。 请注意,以上步骤仅为安装和启动RocketMQ的基本步骤。具体的配置和集成操作可以参考相关的文档和教程。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Windows安装 RocketMQ](https://blog.csdn.net/zzvar/article/details/119873053)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [windows环境下配置安装rocketmq](https://download.csdn.net/download/qq_33556185/10586478)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值