ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

消息队列-RocketMQ

2021-06-21 23:57:27  阅读:305  来源: 互联网

标签:21 49 队列 rwxr Jun 消息 xr root RocketMQ


一.概述

  1. 大多数应用中,都可以通过消息服务中间件的方式来提升系统的异步通信、扩展解耦能力
  2. 消息服务中两个重要的概念:消息代理(Message broker)目的地(destination),当消息发送者发送消息之后,将有消息代理接管,消息代理保证消息传递到指定的目的地。
  3. 消息队列主要由两种形式的目的地,队列(queue):点对点消息通信;主题(topic):发布(publish)和订阅(subscribe)消息通信。

二.RocketMQ

1、RocketMQ简介

RocketMQ是一个纯Java、分布式、队列模型的开源消息中间件,前身是MetaQ,是阿里参考Kafka特点研发的一个队列模型的消息中间件,后开源给apache基金会成为了apache的顶级开源项目,具有高性能、高可靠、高实时、分布式特点。

2、RocketMQ下载安装(windows和linux基本相同)

1.下载地址

https://github.com/apache/rocketmq/releases

2.环境要求

64bit OS, Linux/Unix/Mac is recommended;(Windows user see guide below)
64bit JDK 1.8+;
Maven 3.2.x;
Git;
4g+ free disk for Broker server

3.解压安装

进入主目录预编译

cd /rocketmq/rocketmq-rocketmq-all-4.9.0
mvn -Prelease-all -DskipTests clean install -U

需要下载的挺多的。

4.搬移

将maven解压打的包挪到常用路径下

cd /rocketmq/rocketmq-rocketmq-all-4.9.0/distribution/target/rocketmq-4.9.0
mv rocketmq-4.9.0/ /usr/local/ 

5.bin路径文件

-rwxr-xr-x 1 root root 1654 Jun 21 21:49 cachedog.sh
-rwxr-xr-x 1 root root  845 Jun 21 21:49 cleancache.sh
-rwxr-xr-x 1 root root 1116 Jun 21 21:49 cleancache.v1.sh
drwxr-xr-x 2 root root 4096 Jun 21 21:49 dledger
-rwxr-xr-x 1 root root 1400 Jun 21 21:49 mqadmin
-rwxr-xr-x 1 root root 1029 Jun 21 21:49 mqadmin.cmd
-rwxr-xr-x 1 root root 1394 Jun 21 21:49 mqbroker
-rwxr-xr-x 1 root root 1084 Jun 21 21:49 mqbroker.cmd
-rwxr-xr-x 1 root root 1373 Jun 21 21:49 mqbroker.numanode0
-rwxr-xr-x 1 root root 1373 Jun 21 21:49 mqbroker.numanode1
-rwxr-xr-x 1 root root 1373 Jun 21 21:49 mqbroker.numanode2
-rwxr-xr-x 1 root root 1373 Jun 21 21:49 mqbroker.numanode3
-rwxr-xr-x 1 root root 1396 Jun 21 21:49 mqnamesrv
-rwxr-xr-x 1 root root 1088 Jun 21 21:49 mqnamesrv.cmd
-rwxr-xr-x 1 root root 1571 Jun 21 21:49 mqshutdown
-rwxr-xr-x 1 root root 1398 Jun 21 21:49 mqshutdown.cmd
-rwxr-xr-x 1 root root 2222 Jun 21 21:49 os.sh
-rwxr-xr-x 1 root root 1148 Jun 21 21:49 play.cmd
-rwxr-xr-x 1 root root 1008 Jun 21 21:49 play.sh
-rwxr-xr-x 1 root root  772 Jun 21 21:49 README.md
-rwxr-xr-x 1 root root 2230 Jun 21 21:49 runbroker.cmd
-rwxr-xr-x 1 root root 3734 Jun 21 21:49 runbroker.sh
-rwxr-xr-x 1 root root 1840 Jun 21 21:49 runserver.cmd
-rwxr-xr-x 1 root root 4048 Jun 21 21:49 runserver.sh
-rwxr-xr-x 1 root root 1156 Jun 21 21:49 setcache.sh
-rwxr-xr-x 1 root root 1408 Jun 21 21:49 startfsrv.sh
-rwxr-xr-x 1 root root 1634 Jun 21 21:49 tools.cmd
-rwxr-xr-x 1 root root 1903 Jun 21 21:49 tools.sh

6.启动

遇到问题:内存不足无法启动,修改runserver.sh配置文件

#JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
JAVA_OPT="${JAVA_OPT} -server -Xms500m -Xmx500m -Xmn500m -XX:PermSize=128m -XX:MaxPermSize=320m"

启动nameserver

./mqnamesrv

启动mqbroker(同样要求改配置,这个默认的更大)

./mqbroker

7.测试

./tools.sh org.a[ache.rocketmq.example.quickstart.Producer

遇到异常1:发送失败提示

java.lang.IllegalStateException: org.apache.rocketmq.remoting.exception.RemotingConnectException: connect to null failed

在tools脚本中添加

export NAMESRV_ADDR=localhost:9876

遇到异常2:Broker没有连接到Server

No route info of this topic: TopicTest

重新启动broker,并且指定IP:端口

./mqbroker -n localhost:9876

8.rocketmq-externals

标签:21,49,队列,rwxr,Jun,消息,xr,root,RocketMQ
来源: https://blog.csdn.net/qq_38173650/article/details/118092586

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有