步驟一:關閉broker
Broker重啓可能會導致正在發往這臺機器的的消息發送失敗,RocketMQ提供了一種優雅關閉Broker的方法,通過執行以下命令會清除Broker的寫權限,過40s後,所有客戶端都會更新Broker路由信息,此時再關閉Broker就不會發生髮送消息失敗的情況,因爲所有消息都發往了其他Broker。注:請不要一下子關閉所有broker。指集羣安裝方式
例:sh mqadmin wipeWritePerm -b brokerName -n namesrvAddr
隨後再關閉broker
sh mqshutdown broker
步驟二:關閉namesrv
例:sh mqshutdown namesrv
步驟三:獲取4.6.1的版本包
去官網下載版本包(如果需要更改某些jar包,例如fastjson,就下載源碼包,修改相關依賴後,進行二次編譯。否則下載二進制包即可)。
步驟四:啓動程序
在啓動程序之前,還有兩類文件是需要我們修改的,一類是參數配置文件,配置相關的啓動參數,還有一類是日誌管理類文件,配置日誌相關的參數。然後再正常啓動即可。
升級後產生的問題:
①目前版本升級指的是服務端升級,客戶端升級需要自行升級,測試觀察,服務端和客戶端版本不一致,並沒有產生無法消費的問題,但是仍建議升級爲一致的問題,便於日後排查問題。
②Windows與Unix之間的換行符和編碼問題需要注意,否則無法正常啓動。