官术网_书友最值得收藏!

1.3 快速上手RocketMQ

本節(jié)介紹如何安裝配置單機版的RocketMQ,以及簡單地收發(fā)消息。讀者也可以參考RocketMQ官網(wǎng)的說明文檔。

1.3.1 RocketMQ的下載、安裝和配置

RocketMQ的Binary版是一些編譯好的jar和輔助的shell腳本,可以直接從官網(wǎng)找到下載鏈接(http://rocketmq.apache.org/dowloading/releases/),也可以下載源碼自己編譯。

系統(tǒng)要求:64bit的Linux、Unix或Mac。Java版本大于等于JDK1.8。如果需要從GitHub上下載源碼和編譯的話,需要安裝Maven 3.2.x和Git。

RocketMQ當前的最新版本是4.2.0,下面以Binary版本為例說明如何快速使用:

        > unzip rocketmq-all-4.2.0-bin-release.zip -d ./rocketmq-all-4.2.0-binls
        > cd rocketmq-all-4.2.0-bin/

里面含有以下內(nèi)容:

        LICENSE  NOTICE  README.md  benchmark/  bin/   conf/  lib/

LICENSE、NOTICE和README.md包括一些版權(quán)聲明和功能說明信息;benchmark里包括運行benchmark程序的shell腳本;bin文件夾里含有各種使用RocketMQ的shell腳本(Linux平臺)和cmd腳本(Windows平臺),比如常用的啟動NameServer的腳本mqnamesrv,啟動Broker的腳本mqbroker,集群管理腳本mqadmin等;conf文件夾里有一些示例配置文件,包括三種方式的broker配置文件、logback日志配置文件等,用戶在寫配置文件的時候,一般基于這些示例配置文件,加上自己特殊的需求即可;lib文件夾里包括RocketMQ各個模塊編譯成的jar包,以及RocketMQ依賴的一些jar包,比如Netty、commons-lang、FastJSON等。

1.3.2 啟動消息隊列服務

啟動單機的消息隊列服務比較簡單,不需要寫配置文件,只需要依次啟動本機的NameServer和Broker即可。

啟動NameServer:

        > nohup sh bin/mqnamesrv &
        > tail -f ~/Logs/rocketmqLogs/namesrv.Log
        The Name Server boot success...

啟動Broker:

        > nohup sh bin/mqbroker -n localhost:9876&
        > tail -f ~/Logs/rocketmqLogs/broker.Log
        The broker[%s, 192.168.0.233:10911] boot success...

1.3.3 用命令行發(fā)送和接收消息

為了快速展示發(fā)送和接收消息,本節(jié)展示的是用命令行發(fā)送和接收消息,實際上就是運行寫好的demo程序,后續(xù)我們可以參考這些demo來寫自己的發(fā)送和接收程序。

運行示例程序,發(fā)送和接收消息:

        > export NAMESRV_ADDR=localhost:9876
        > sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
      SendResult [sendStatus=SEND_OK, msgId= ...

      > sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer
      ConsumeMessageThread_%d Receive New Messages: [MessageExt...

1.3.4 關(guān)閉消息隊列

消息隊列被啟動后,如果不主動關(guān)閉,則會一直在后臺運行,占用系統(tǒng)資源。我們有專門用來關(guān)閉NameServer和Broker的命令。

關(guān)閉NameServer和Broker:

        > sh bin/mqshutdown broker
        The mqbroker(36695) is running...
        Send shutdown request to mqbroker(36695) OK


        > sh bin/mqshutdown namesrv
        The mqnamesrv(36664) is running...
        Send shutdown request to mqnamesrv(36664) OK

恭喜,現(xiàn)在你已經(jīng)能夠使用RocketMQ發(fā)送并接收消息了,使用消息隊列的基本功能就是這么簡單。

主站蜘蛛池模板: 纳雍县| 贡觉县| 健康| 东乌| 通州市| 达州市| 汕尾市| 和静县| 讷河市| 喀喇| 宽甸| 古丈县| 改则县| 紫阳县| 称多县| 嘉义县| 阜城县| 阿拉尔市| 林口县| 崇义县| 葫芦岛市| 专栏| 息烽县| 高州市| 姜堰市| 香河县| 敖汉旗| 西城区| 蒙山县| 黄骅市| 札达县| 抚顺县| 文昌市| 丹凤县| 五常市| 错那县| 绍兴市| 叙永县| 新巴尔虎右旗| 新沂市| 陆川县|