棋牌游戲網(wǎng)站怎么做的seo與sem的區(qū)別
本文主要記錄生產(chǎn)環(huán)境短暫停機升級RocketMQ版本的過程
一、整體思路
????????1.將生產(chǎn)環(huán)境MQ4.9.2集群同步到測試環(huán)境,并啟動,確保正常運行。
? ? ? ? 2.參照4.9.2配置4.9.6集群
? ? ? ? 3.停掉4.9.2集群,啟動4.9.6集群,測試確保正常運行。
? ? ? ? 4.停掉4.9.6集群,復制4.9.2集群的store存儲文件夾到4.9.6,再次啟動觀察有無異常,Topic及歷史消息是否可以正常查詢和使用。
? ? ? ? 5.停掉4.9.6集群,再啟動4.9.2集群,確保兩個版本的集群都正??捎?#xff0c;無異常,目的是保證都可用,再生產(chǎn)機器升級遇到問題時可以及時切回老版本,不至于長時間停機影響業(yè)務。
? ? ? ? 6.生產(chǎn)環(huán)境備份4.9.2集群
? ? ? ? 7.生產(chǎn)環(huán)境配置4.9.6集群(參照測試環(huán)境配置過程)
? ? ? ? 8.生產(chǎn)環(huán)境停機4.9.2集群,復制store存儲目錄到4.9.6集群,啟動4.9.6集群,并測試4.9.6有無異常。
? ? ? ? 注意:1-5步驟在測試機器進行,重點是驗證升級思路及可行性,避免在生產(chǎn)環(huán)境升級時遇到問題不能及時解決導致消息隊列長時間停機。6-8步驟在生產(chǎn)環(huán)境進行,第8步驟生產(chǎn)MQ停機約在10分鐘左右。
二、實際操作(生產(chǎn)環(huán)境單機雙主雙從異步集群)
? ? ? ? 1.上傳4.9.6mq程序包并解壓
? ? ? ? 2.調(diào)整/rocketmq-4.9.6/bin目錄下runserver.sh、runbroker.sh里的JVM內(nèi)存參數(shù)(參照4.9.2版本的JVM參數(shù)即可)。
? ? ? ? 3.rocketmq-4.9.6/conf/2m-2s-async添加配置文件(可以直接copy原4.9.2的,再逐個檢查修改):
? ? ? ? ?4.在rocketmq-4.9.6目錄下創(chuàng)建logs文件夾用于存儲日志文件(我在broker中配置了日志輸出在/rocketmq-4.9.6/logs下)
? ? ? ? 5.調(diào)整LINUX機器ROCKETMQ_HOME環(huán)境變量到4.9.6目錄,并重新加載確??捎谩?/p>
修改/etc/profile文件,
修改后可以通過命令 echo $ROCKETMQ_HOME 查詢環(huán)境變量信息,
若未改變,需要通過命令 source /etc/profile 重新加載下即可。
? ? ? ? 6.停機4.9.2集群,復制store存儲目錄到4.9.6,啟動4.9.6集群。
? ? ? ? ?提示:此步驟涉及到生產(chǎn)環(huán)境MQ停機,停機時間越短越好,故提前準備好4.9.2停機命令、store存儲目錄復制命令、4.9.6集群啟動命令等,避免因LINUX命令不熟悉延長停機時間。
? ? ? ? 7.通過rocketmq-dashboard儀表板查看MQ啟動情況,并及時進行消息的生產(chǎn)和消費測試,第一時間確保升級后無異常。
啟動命令:
# namesrv啟動
nohup ${ROCKETMQ_HOME}/bin/mqnamesrv -c ${ROCKETMQ_HOME}/conf/2m-2s-async/namesrv-a.properties &>${ROCKETMQ_HOME}/logs/mqnamesrv_a.log 2>&1 &
nohup ${ROCKETMQ_HOME}/bin/mqnamesrv -c ${ROCKETMQ_HOME}/conf/2m-2s-async/namesrv-b.properties &>${ROCKETMQ_HOME}/logs/mqnamesrv_b.log 2>&1 &
#broker啟動
nohup ${ROCKETMQ_HOME}/bin/mqbroker -c ${ROCKETMQ_HOME}/conf/2m-2s-async/broker-a.properties &>${ROCKETMQ_HOME}/logs/broker_a.log 2>&1 &
nohup ${ROCKETMQ_HOME}/bin/mqbroker -c ${ROCKETMQ_HOME}/conf/2m-2s-async/broker-a-s.properties &>${ROCKETMQ_HOME}/logs/broker_as.log 2>&1 &
nohup ${ROCKETMQ_HOME}/bin/mqbroker -c ${ROCKETMQ_HOME}/conf/2m-2s-async/broker-b.properties &>${ROCKETMQ_HOME}/logs/broker_b.log 2>&1 &
nohup ${ROCKETMQ_HOME}/bin/mqbroker -c ${ROCKETMQ_HOME}/conf/2m-2s-async/broker-b-s.properties &>${ROCKETMQ_HOME}/logs/broker_bs.log 2>&1 &
三、發(fā)送消息測試過程記錄
1. 生產(chǎn)者發(fā)送MQ消息:
2.rocketmq-dashboard儀表板查看剛剛發(fā)送的消息
3. 消費者成功消費MQ消息
?