mac/Linux環境RokectMQ本地安裝、啓動

一、RokectMQ部署圖

RocketMQ是阿里的開源消息中間件,在介紹怎樣安裝之前,先簡單介紹下RokectMQ,在總體認識它的架構,各組件的作用

物理部署結構:
在這裏插入圖片描述

  1. name server:主要是提供輕量級的服務發現和路由服務,每個節點都存放了全部的路由信息和對應的服務,也就是說生產者和消費從任意name server節點都能去註冊或獲取服務
  2. broker:簡單來說就是消息存放的地方,滿足TOPIC和QUEUE機制,其他特點有提供上億消息的堆積能力、提供故障恢復、統計功能和告警功能、通過2或3拷貝實現高可用,很強大
  3. producer:給broker發送消息,消息生產者,可以支持分佈式部署
  4. consumer:消息消費者,支持推和拉兩種模式,支持集羣消費和廣播消費

二、安裝與啓動

1.系統要求

  1. 64bit OS, Linux/Unix/Mac
  2. 64bit JDK 1.8+
  3. Maven 3.2.x
  4. Git

2.下載安裝包

官網RokectMQ安裝包鏈接

3.解壓

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

如果二次解壓需要覆蓋,命令加上-o,即:

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

3.進入項目目錄,並執行安裝操作

  1. cd rocketmq-all-4.2.0/
  2. mvn -Prelease-all -DskipTests clean install -U

4.安裝完成,進入項目啓動文件目錄

cd distribution/target/apache-rocketmq

5.啓動nameServer,查看啓動日誌

nohup sh bin/mqnamesrv &

查看啓動日誌:

tail -f ~/logs/rocketmqlogs/namesrv.log

6.開啓自動創建Topic方式啓動broker,查看啓動日誌

nohup sh bin/mqbroker -n localhost:9876 autoCreateTopicEnable=true &

查看啓動日誌:

tail -f ~/logs/rocketmqlogs/broker.log

7.發送和接受消息測試聯通性

在發送/接收消息前,我們需要告訴客戶端:消息服務器的地址:端口(本地的話可以用localhost:端口)。RocketMQ提供多種方式來實現它

  1. 需要進入到RokectMQ目錄下:
export NAMESRV_ADDR=localhost:9876
  1. 發送一條消息:
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

應答示例:

SendResult [sendStatus=SEND_OK, msgId=1E27D5677A4D61BBE9BA02F57A3B0294, offsetMsgId=C0A8006500002A9F0000000000048E54, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=3], queueOffset=415]

  1. 接收消息:
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

應答示例:
ConsumeMessageThread_4 Receive New Messages: [MessageExt [queueId=1, storeSize=180, queueOffset=476, sysFlag=0, bornTimestamp=1583041642342, bornHost=/192.168.0.101:64271, storeTimestamp=1583041642344, storeHost=/192.168.0.101:10911, msgId=C0A8006500002A9F0000000000053B4C, commitLogOffset=342860, bodyCRC=1735662019, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=500, CONSUME_START_TIME=1583041884578, UNIQ_KEY=1E27D5677A4D61BBE9BA02F57B66038A, WAIT=true, TAGS=TagA}, body=18]]]

以上就完成了RocketMQ的安裝和啓動,需要注意的是Java環境變量必須要配置好,mac電腦可以通過/usr/libexec/java_home -V查看Java安裝路徑,然後在~/.bash_profile中添加:

JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
export JAVA_HOME

然後執行 source ~/.bash_profile 即可。

三、關閉nameServer和broker

進入到apache-rocketmq目錄,關閉nameServer:

sh bin/mqshutdown namesrv

進入到apache-rocketmq目錄,關閉broker:

sh bin/mqshutdown broker
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章