Centos中如何安装RocketMQ
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,小编给大家分享一下Centos中如何安装RocketMQ,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!安装官方地址为:ht
千家信息网最后更新 2025年01月23日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(Listmsgs, 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安全错误
数据库的锁怎样保障安全
数据库客户合同
i59400f能做服务器吗
网络安全审议分组
mail服务器安全隐患通报
怎么自己架设服务器
软件开发合同的模板
网络安全综合服务商
网络技术员论坛
内蒙古网络安全宣传官方网站
刷卡机连接不到服务器怎么回事
神奇宝贝我的世界剑盾服务器
网络安全演练工作心得体会
网络安全三句半五人
大理软件开发专业好吗
怎么访问别人电脑的数据库
天津语音网络技术分类价目表
软件开发定金发票
互联网大会科技视频
机务段网络安全报道
我同学开软件开发
部队网络安全教育讨论发言
现在服务器硬盘是多少尺寸的
泰拉瑞亚怎么联系服务器
万能拍照识别软件开发多少钱
gt赛车7 无法与服务器建立连接
阿尔德里奇数据库
网络安全测评的四个阶段内容
华为云使用浪潮服务器
网络安全小说广告
软件开发师发展前景