千家信息网

Centos中如何安装RocketMQ

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,小编给大家分享一下Centos中如何安装RocketMQ,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!安装官方地址为:ht
千家信息网最后更新 2025年12月01日Centos中如何安装RocketMQ

小编给大家分享一下Centos中如何安装RocketMQ,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!


安装

官方地址为:https://rocketmq.apache.org/docs/quick-start/ 本人安装如下:

//下载最新的rocketmqwget http://apache-mirror.8birdsvideo.com/rocketmq/4.4.0/rocketmq-all-4.4.0-bin-release.zip//解压unzip rocketmq-all-4.4.0-bin-release.zip//切换到mq目录cd rocketmq-all-4.4.0-bin-release//name server 启动nohup ./bin/mqnamesrv -n 111.231.XX.XX:9876 &//-c conf/broker.conf autoCreateTopicEnable=true 参数需要带上,不然topic需要手动创建nohup sh bin/mqbroker -n 111.231.XX.XX:9876 -c conf/broker.conf autoCreateTopicEnable=true &

配置,切换到mq的bin目录下

cd rocketmq-all-4.4.0-bin-release/bin

rocketmq默认最低内存为4g,机器内存不够用的话,找到runserver.sh和runbroker.sh编辑如下:

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn125m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

运行

运行官方demo,发现如下错误:

21:20:22.249 [NettyClientSelector_1] INFO  RocketmqRemoting - closeChannel: close the connection to remote address[] result: trueorg.apache.rocketmq.remoting.exception.RemotingTooMuchRequestException: sendDefaultImpl call timeout        at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendDefaultImpl(DefaultMQProducerImpl.java:640)        at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1310)        at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1256)        at org.apache.rocketmq.client.producer.DefaultMQProducer.send(DefaultMQProducer.java:339)        at org.apache.rocketmq.example.simple.Producer.main(Producer.java:40)

运行以下命令查看broker配置并写入远程ip地址:

//查看broker配置sh ./bin/mqbroker -m//关闭brokersh bin/mqshutdown broker//将本机远程ip写入配置文件中echo 'brokerIP1=111.231.XX.XX' > conf/broker.properties //重新启动brokernohup sh bin/mqbroker -n 111.231.XX.XX:9876 -c conf/broker.conf autoCreateTopicEnable=true &

管理控制台安装

Git地址:https://github.com/apache/rocketmq-externals/tree/master/rocketmq-console

git clone git@github.com:apache/rocketmq-externals.gitcd  rocketmq-external/rocketmq-console/mvn clean package -Dmaven.test.skip=true

打完包后,运行以下命令

java -jar rocketmq-console-ng-1.0.1.jar --server.port=12181 --rocketmq.config.namesrvAddr=111.231.XX.XX:9876

打开 http://localhost:12181访问控制台,像如下 在Procuder这个页面查询时会出现如下异常:

java.lang.RuntimeException: org.apache.rocketmq.client.exception.MQBrokerException: CODE: 1  DESC: the producer group[] not existFor more information, please visit the url, http://rocketmq.apache.org/docs/faq/        at com.google.common.base.Throwables.propagate(Throwables.java:160)        at org.apache.rocketmq.console.service.impl.ProducerServiceImpl.getProducerConnection(ProducerServiceImpl.java:38)        at org.apache.rocketmq.console.controller.ProducerController.producerConnection(ProducerController.java:39)

请把代码中producer.shutdown()这句注掉,生产环境中请加上。

 //producer.shutdown();

代码示例(官方)

生产者

package org.apache.rocketmq.example.simple;import org.apache.rocketmq.client.exception.MQClientException;import org.apache.rocketmq.client.producer.DefaultMQProducer;import org.apache.rocketmq.client.producer.SendResult;import org.apache.rocketmq.common.message.Message;import org.apache.rocketmq.remoting.common.RemotingHelper;public class Producer {    public static void main(String[] args) throws MQClientException, InterruptedException {        DefaultMQProducer producer = new DefaultMQProducer("ProducerGroupName");        producer.setNamesrvAddr("111.231.XX.XX:9876");        producer.start();        for (int i = 0; i < 10; i++)            try {                {                    Message msg = new Message("TopicTest",                        "TagA",                        "OrderID188",                        "Hello world".getBytes(RemotingHelper.DEFAULT_CHARSET));                    SendResult sendResult = producer.send(msg);                    System.out.printf("%s%n", sendResult);                }            } catch (Exception e) {                e.printStackTrace();            }        //producer.shutdown();    }}

消费者

package org.apache.rocketmq.example.simple;import java.util.List;import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer;import org.apache.rocketmq.client.consumer.listener.ConsumeConcurrentlyContext;import org.apache.rocketmq.client.consumer.listener.ConsumeConcurrentlyStatus;import org.apache.rocketmq.client.consumer.listener.MessageListenerConcurrently;import org.apache.rocketmq.client.exception.MQClientException;import org.apache.rocketmq.common.consumer.ConsumeFromWhere;import org.apache.rocketmq.common.message.MessageExt;public class PushConsumer {    public static void main(String[] args) throws InterruptedException, MQClientException {        DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("CID_JODIE_1");        consumer.subscribe("TopicTest", "*");        consumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_FIRST_OFFSET);        //wrong time format 2017_0422_221800        //consumer.setConsumeTimestamp("20181109221800");        consumer.setNamesrvAddr("111.231.XX.XX:9876");        consumer.registerMessageListener(new MessageListenerConcurrently() {            @Override            public ConsumeConcurrentlyStatus consumeMessage(List msgs, ConsumeConcurrentlyContext context) {                System.out.printf("%s Receive New Messages: %s %n", Thread.currentThread().getName(), msgs);                return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;            }        });        consumer.start();        System.out.printf("Consumer Started.%n");    }}

以上是"Centos中如何安装RocketMQ"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

运行 配置 地址 官方 篇文章 代码 内存 内容 命令 控制台 目录 切换 控制 生产 最低 不够 不怎么 参数 大部分 手动 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全宣传周主题篇 关系型数据库两张表关键 怎么压缩sql数据库表文件 存储服务器联网 美国的网络安全产业 林业一张图数据库总蓄积量 在线考试数据库课程报告总结 中国对等网络技术 mysql启动数据库 中小型网络安全管理与维护试卷 浙江数据网络技术分类优势 初中生网络安全教育手抄报 邯郸商城软件开发 网络数据服务器有什么用 1.16.5的服务器 初级软件开发的自我介绍 2020网络安全周板报 租用服务器协议合同 数据库的键可以是范围吗 开一个软件开发公司什么人才 计算机计数网络技术有限公司 湖北项目软件开发商 银行加强网络安全工作的意见 天津英特网络技术有限公司 java软件开发的简历 网络安全法 一倍 十倍 广州电脑软件开发大概要多少钱 网络安全重点保护原则 网络安全法治教育主题班会教案 数据库查询仓库本月储存量
0