1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Mac和Linux中Apache RocketMQ的安装和使用(亲测有效 不服来战)

Mac和Linux中Apache RocketMQ的安装和使用(亲测有效 不服来战)

时间:2020-11-02 23:29:35

相关推荐

Mac和Linux中Apache RocketMQ的安装和使用(亲测有效 不服来战)

一、项目需要用到Apache RocketMQ

Apache RocketMQ™ is an open source distributed messaging and streaming data platform.

这是阿里开源的一个消息中间件框架。

官网:官网

二、下面来快速开始

官方的快速开始文档

三、系统要求

The following softwares are assumed installed:

64bit OS, Linux/Unix/Mac is recommended;

64bit JDK 1.8+;

Maven 3.2.x

Git

四、先要去下载安装包

安装包网址

五、点击这个下载

六、解压

unzip rocketmq-all-4.2.0-source-release.zip

七、进入到项目目录下

cd rocketmq-all-4.2.0/

八、执行安装的操作

~/aliSpace/recketmq/rocketmq-all-4.2.0 ⌚ 14:20:14$ mvn -Prelease-all -DskipTests clean install -U[INFO] Scanning for projects...[INFO] ------------------------------------------------------------------------[INFO] Detecting the operating system and CPU architecture[INFO] ------------------------------------------------------------------------[INFO] os.detected.name: osx[INFO] os.detected.arch: x86_64[INFO] os.detected.classifier: osx-x86_64......[INFO] rocketmq-distribution 4.2.0 ........................ SUCCESS [ 4.717 s][INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: 28.456 s[INFO] Finished at: -04-09T14:21:40+08:00[INFO] Final Memory: 85M/1608M[INFO] ------------------------------------------------------------------------

九、安装完成后是这个样子

~/aliSpace/recketmq/rocketmq-all-4.2.0 ⌚ 14:21:41$ ls1 client openmessagingBUILDING common pom.xmlCONTRIBUTING.mddev remotingDEPENDENCIES distribution srvutilLICENSE example storeNOTICE filter stylePULL_REQUEST_TEMPLATE.md filtersrvtargetREADME.mdlogappender testbroker namesrv tools

十、进入到启动文件所在的目录

~/aliSpace/recketmq/rocketmq-all-4.2.0 ⌚ 14:56:26$ cd distribution/target/apache-rocketmq~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 14:57:34$ lsLICENSE NOTICE README.md benchmark bin conflib

十一、启动服务器,查看输出日志

启动服务器~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:00:25$ nohup sh bin/mqnamesrv &

查看启动日志~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:00:44$ tail -f ~/logs/rocketmqlogs/namesrv.log-04-09 15:00:37 INFO main - tls.server.trustCertPath = null-04-09 15:00:37 INFO main - tls.client.keyPath = null-04-09 15:00:37 INFO main - tls.client.keyPassword = null-04-09 15:00:37 INFO main - tls.client.certPath = null-04-09 15:00:37 INFO main - tls.client.authServer = false-04-09 15:00:37 INFO main - tls.client.trustCertPath = null-04-09 15:00:37 INFO main - Using OpenSSL provider-04-09 15:00:37 INFO main - SSLContext created for server-04-09 15:00:37 INFO NettyEventExecutor - NettyEventExecutor service started-04-09 15:00:37 INFO main - The Name Server boot success. serializeType=JSON-04-09 15:01:37 INFO NSScheduledThread1 - ---------------------------------------------------------04-09 15:01:37 INFO NSScheduledThread1 - configTable SIZE: 0

十二、启动经纪人,查看经纪人的启动日志

启动经纪人人~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:02:57$ nohup sh bin/mqbroker -n localhost:9876 &[1] 2196appending output to nohup.out

查看经纪人的启动日志~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:03:15$ tail -f ~/logs/rocketmqlogs/broker.log-04-09 15:03:21 INFO main - load /Users/wangdong/store/config/consumerFilter.json OK-04-09 15:03:21 INFO main - load /Users/wangdong/store/config/delayOffset.json OK-04-09 15:03:21 INFO main - Set user specified name server address: localhost:9876-04-09 15:03:21 INFO PullRequestHoldService - PullRequestHoldService service started-04-09 15:03:21 INFO main - register broker to name server localhost:9876 OK-04-09 15:03:21 INFO main - The broker[wdMac.local, 192.168.33.204:10911] boot success. serializeType=JSON and name server is localhost:9876

十三、发送或者接收消息

Before sending/receiving messages, we need to tell clients the location of name servers. RocketMQ provides multiple ways to achieve this. For simplicity, we use environment variable NAMESRV_ADDR

译:在发送/接收消息前,我们需要告诉客户端:消息服务器的地址:端口(本地的话可以用localhost:端口)。RocketMQ提供多种方式来实现它。

1.下面我们以命令行设置NAMESRV_ADDR的方式来实现它。

注意需要进入到mq目录下:

~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:17:31$ export NAMESRV_ADDR=localhost:9876

2.发送一条消息

~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:26:44$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.ProducerSendResult [sendStatus=SEND_OK, msgId= ...

3.接收消息

~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:26:44$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.ConsumerConsumeMessageThread_%d Receive New Messages: [MessageExt...

十四、关闭服务器和经纪人

关闭服务器~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:25:25$ sh bin/mqshutdown namesrvThe mqnamesrv(2083) is running...Send shutdown request to mqnamesrv(2083) OK

关闭经纪人~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:29:53$ sh bin/mqshutdown brokerThe mqbroker(2207) is running...Send shutdown request to mqbroker(2207) OK

好了,一个简单的开始就结束了

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。