淺談PHP5.6 與 PHP7.0 區別
阿新 • • 發佈:2020-11-18
目錄
下載原始碼
下載原始碼,github頁面選擇(rocketmq-all-4.7.1)版本壓縮包,https://github.com/apache/rocketmq/tags
匯入IDEA
- 使用IDEA開啟工程後,修改pom.xml檔案中無關內容
- 去除maven-gpg-plugin、maven-failsafe-plugin外掛
- 使用IDEA的maven編譯整個專案,(clean compile install),記得Skip Tests
新建資料夾,存放配置、日誌、訊息體等內容
- 新建一個資料夾,如1local_ROCKETMQ_HOME
- 1local_ROCKETMQ_HOME路徑下建立3個資料夾(conf,logs,store)
- 將工程中distribution/conf目錄下的3個檔案(logback_namesrv.xml,logback_broker.xml,broker.conf),複製到前面建立的conf目錄下
- 修改broker.conf,增加【附錄1】中的配置,注意替換路徑
- 修改logback_namesrv.xml和logback_broker.xml中的${user.home}引數,替換為1local_ROCKETMQ_HOME絕對路徑
- 修改org.apache.rocketmq.common.namesrv.NamesrvConfig,rocketmqHome變數,原因是動態獲取配置,現改為1local_ROCKETMQ_HOME絕對路徑
- 修改org.apache.rocketmq.common.BrokerConfig變數,原因是動態獲取配置,現改為1local_ROCKETMQ_HOME絕對路徑
應用啟動
- NameServer啟動
- NamesrvStartup main方法啟動即可
- 控制檯列印如下日誌代表啟動成功(The Name Server boot success. serializeType=JSON)
- 1local_ROCKETMQ_HOME/logs/rocketmqlogs可看到詳細日誌
- BrokerStartup啟動
- BrokerStartup main方法啟動即可(啟動時需指定conf檔案
-c D:\opensource_code\rocketmq\1local_ROCKETMQ_HOME\conf\broker.conf
) - 控制檯列印如下日誌代表啟動成功(
The broker[broker-a, 你的ip:10911] boot success. serializeType=JSON and name server is 127.0.0.1:9876
) - 1local_ROCKETMQ_HOME/logs/rocketmqlogs可看到詳細日誌
- BrokerStartup main方法啟動即可(啟動時需指定conf檔案
測試訊息的生產和消費
- 訊息傳送,找到類org.apache.rocketmq.example.quickstart.Producer
- 增加程式碼,指定NameSrv地址,
producer.setNamesrvAddr("127.0.0.1:9876");
- 啟動main方法,可見日誌輸出SendResult
- 在store路徑下,可見已生成TopicTest相關的物理檔案
- 增加程式碼,指定NameSrv地址,
- 訊息消費,找到類org.apache.rocketmq.example.quickstart.Consumer
- 增加程式碼,指定NameSrv地址,
consumer.setNamesrvAddr("127.0.0.1:9876");
- 啟動main方法,可見日誌輸出消費日誌,如
ConsumeMessageThread_19 Receive New Messages: xxx....
- 增加程式碼,指定NameSrv地址,
附錄1
#nameServer 地址 分號分割
namesrvAddr=127.0.0.1:9876
# 儲存路徑
storePathRootDir=D:\\opensource_code\\rocketmq\\1local_ROCKETMQ_HOME\\store
#commitLog 儲存路徑
storePathCommitLog=D:\\opensource_code\\rocketmq\\1local_ROCKETMQ_HOME\\store\\commitlog
# 消費佇列儲存路徑
storePathConsumeQueue=D:\\opensource_code\\rocketmq\\1local_ROCKETMQ_HOME\\store\\consumequeue
# 訊息索引|儲存路徑
storePathindex=D:\\opensource_code\\rocketmq\\1local_ROCKETMQ_HOME\\store\\index
#checkpoint 檔案儲存路徑
storeCheckpoint=D:\\opensource_code\\rocketmq\\1local_ROCKETMQ_HOME\\store\\checkpoint
#abort 檔案儲存路徑
abortFile=D:\\opensource_code\\rocketmq\\1local_ROCKETMQ_HOME\\store\\abort