RocketMQ 5.0安裝部署

0.前言

在微服務架構逐漸成為主流的今天,消息隊列如同數字世界的快遞員,承擔著系統間高效通信的重要使命。

Apache RocketMQ 自誕生以來,因其架構簡單、業務功能豐富、具備極強可擴展性等特點被眾多企業開發者以及云廠商廣泛采用。歷經十余年的大規模場景打磨,RocketMQ 已經成為業內共識的金融級可靠業務消息首選方案,被廣泛應用于互聯網、大數據、移動互聯網、物聯網等領域的業務場景。

1.本地部署RockerMQ5.0

系統要求:

64位操作系統,推薦 Linux/Unix/macOS

64位 JDK 1.8+

下載安裝安裝包:

二進制包下載地址:https://dist.apache.org/repos/dist/release/rocketmq/5.3.1/rocketmq-all-5.3.1-bin-release.zip

解壓安裝包:

解壓目錄如下

啟動NameServer:

到解壓目錄的bin目錄下,輸入命令啟動NameServer

nohup sh mqnamesrv &

驗證NameServer是否啟動成功

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

我們可以在namesrv.log 中看到?'The Name Server boot success..',?表示NameServer 已成功啟動。

啟動Broker和Proxy:

NameServer成功啟動后,我們啟動Broker和Proxy。這里我們使用 Local 模式部署,即 Broker 和 Proxy 同進程部署。5.x 版本也支持 Broker 和 Proxy 分離部署以實現更靈活的集群能力。

到bin目錄下輸入命令啟動broker

nohup sh mqbroker -n localhost:9876 --enable-proxy &

輸入命令,驗證broker是否啟動成功

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

我們可以在 proxy.log 中看到“The broker[brokerName,ip:port]?boot success..”,這表明 broker 已成功啟動。

停止服務:

到bin目錄下輸入命令停止服務

sh mqshutdown broker
    sh mqshutdown namesrv

    至此rockertMQ5.0本地部署完成。

    2.docker部署

    拉取RocketMQ鏡像:

    docker pull apache/rocketmq:5.3.1

    創建容器共享網絡:

    RocketMQ 中有多個服務,需要創建多個容器,創建 docker 網絡便于容器間相互通信。

    docker network create rocketmq

    啟動NameServer:

    輸入命令啟動NameServer

    docker run -d --name rmqnamesrv -p 9876:9876 --network rocketmq apache/rocketmq:5.3.1 sh mqnamesrv

    驗證 NameServer 是否啟動成功

    docker logs -f rmqnamesrv

    看到?'The Name Server boot success..',?表示NameServer 已成功啟動。

    啟動 Broker+Proxy:

    NameServer 成功啟動后,我們啟動 Broker 和 Proxy。

    配置 Broker 的IP地址

    echo "brokerIP1=127.0.0.1" > broker.conf

    啟動 Broker 和 Proxy

    docker run -d \
    --name rmqbroker \
    --network rocketmq \
    -p 10912:10912 -p 10911:10911 -p 10909:10909 \
    -p 8080:8080 -p 8081:8081 \
    -e "NAMESRV_ADDR=rmqnamesrv:9876" \
    -v ./broker.conf:/home/rocketmq/rocketmq-5.3.1/conf/broker.conf \
    apache/rocketmq:5.3.1 sh mqbroker --enable-proxy \
    -c /home/rocketmq/rocketmq-5.3.1/conf/broker.conf

    驗證 Broker 是否啟動成功

    docker exec -it rmqbroker bash -c "tail -n 10 /home/rocketmq/logs/rocketmqlogs/proxy.log"

    看到?'The broker boot success..',?表示 Broker 已成功啟動

    停止容器:

    停止 NameServer 容器

    docker stop rmqnamesrv

    停止 Broker 容器

    docker stop rmqbroker

    3.管理工具RocketMQ Dashboard部署

    RocketMQ Dashboard?是 RocketMQ 的管控利器,為用戶提供客戶端和應用程序的各種事件、性能的統計信息,支持以可視化工具代替 Topic 配置、Broker 管理等命令行操作。

    方式一源碼安裝

    到github下載源碼:https://github.com/apache/rocketmq-dashboard

    使用IDEA打開,使用maven編譯

    修改配置文件端口號,防止8080端口沖突

    直接運行APP.calss 方法,打開瀏覽器訪問:http://127.0.0.1:9999/

    方式二docker安裝:

    拉取?rocketmq-dashboard?鏡像

    docker pull apacherocketmq/rocketmq-dashboard:latest

    運行?rocketmq-dashboard

    docker run -d --name rocketmq-dashboard -e "JAVA_OPTS=-Drocketmq.namesrv.addr=127.0.0.1:9876" -p 9999:8080 -t apacherocketmq/rocketmq-dashboard:latest

    namesrv.addr:port?替換為?rocketmq?中配置的 nameserver 地址:端口號。

    瀏覽器訪問:http://127.0.0.1:9999/

    儀表盤功能介紹如下:

    4.最后

    至此rocketMQ5.0的部署安裝完成,詳情可到官網查看:https://rocketmq.apache.org/

    本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
    如若轉載,請注明出處:http://www.pswp.cn/news/895697.shtml
    繁體地址,請注明出處:http://hk.pswp.cn/news/895697.shtml
    英文地址,請注明出處:http://en.pswp.cn/news/895697.shtml

    如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

    相關文章

    Ubuntu 22.04.5 LTS 安裝企業微信,(2025-02-17安裝可行)

    一、依賴包(Ubuntu 20.04/Debian 11) 點擊下載https://www.spark-app.store/download_dependencies_latest 1、 下載最新的依賴包。 請訪問星火應用商店依賴包下載頁面, 下載最新的依賴包。2、解壓依賴包 </

    如何使用 HPjtune 分析 Java GC 日志并優化 JVM 性能

    HPjtune 是一款用于分析 Java 應用程序垃圾回收&#xff08;GC&#xff09;日志的工具&#xff0c;主要用于優化 JVM 性能。雖然 HPjtune 本身并不直接生成 HTML 格式的報告&#xff0c;但可以通過結合其他工具或方法將分析結果導出為 HTML 格式。以下是實現這一目標的步驟和方…

    國產FPGA開發板選擇

    FPGA開發板是學習和開發FPGA的重要工具&#xff0c;選擇合適的開發板對學習效果和開發效率至關重要。隨著國產FPGA的發展&#xff0c;淘寶上的許多FPGA開發板店鋪也開始進行國產FPGA的設計和銷售&#xff0c;本文將對國產FPGA和相關店鋪做個簡單梳理&#xff0c;幫助有需要使用…

    Java高頻面試之SE-22

    hello啊&#xff0c;各位觀眾姥爺們&#xff01;&#xff01;&#xff01;本baby今天又來了&#xff01;哈哈哈哈哈嗝&#x1f436; Java中的Optional了解多少&#xff1f; 在 Java 中&#xff0c;Optional 是 Java 8 引入的一個容器類&#xff0c;用于顯式處理可能為 null 的…

    使用OBS和nginx實現直播流

    使用OBS和nginx實現直播流&#xff0c;如 1&#xff0c;下載OBS OBS用于視頻錄制和直播的免費開源軟件。在 Windows、Mac 或 Linux 上快速輕松地下載并開始流式傳輸。官網下載 2&#xff0c;下載nginx 注意nginx需要下載帶gryghon版本&#xff0c;這個才有rtmp模塊&#xff0…

    PyTorch 源碼學習:閱讀經驗 代碼結構

    分享自己在學習 PyTorch 源碼時閱讀過的資料。本文重點關注閱讀 PyTorch 源碼的經驗和 PyTorch 的代碼結構。因為 PyTorch 不同版本的源碼實現有所不同&#xff0c;所以筆者在整理資料時盡可能按版本號升序&#xff0c;版本號見標題前[]。最新版本的源碼實現還請查看 PyTorch 倉…

    python實現jaccard系數得出兩個集合的相似度

    python實現jaccard系數得出兩個集合的相似度 1、簡介 計算兩個集合之間的Jaccard系數是一種常用的方法,用于衡量這兩個集合的相似度。 Jaccard系數定義為兩個集合交集大小與它們并集大小的比值。 Jaccard 系數的值范圍在 0 到 1 之間,值越大表示兩個集合越相似。 2、求兩個…

    小愛音箱控制手機和電視聽歌的嘗試

    最近買了小愛音箱pro&#xff0c;老婆讓我扔了&#xff0c;吃灰多年的舊音箱。當然舍不得&#xff0c;比小愛還貴&#xff0c;剛好還有一臺紅米手機&#xff0c;能插音箱&#xff0c;為了讓音箱更加靈活&#xff0c;買了個2元的藍牙接收模塊Type-c供電3.5接口。這就是本次嘗試起…

    Pycharm+CodeGPT+Ollama+Deepseek

    首先&#xff0c;體驗截圖&#xff1a; 接著&#xff1a; 1、下載Ollama&#xff1a; Download Ollama on macOS 2、下載模型 以1.5b為例&#xff0c;打開命令行&#xff0c;輸入: ollama run deepseek-r1:1.5b 3、Pycharm安裝Code GPT插件 打開PyCharm&#xff0c;找到文…

    如何確保 for...in 循環按照特定順序遍歷對象屬性

    由于 for...in 循環遍歷對象屬性的順序在 ECMAScript 規范中沒有嚴格規定&#xff0c;若要確保按照特定順序遍歷對象屬性&#xff0c;不能直接依賴 for...in 本身&#xff0c;不過可以借助一些其他方法來實現。以下是幾種常見的解決方案&#xff1a; 1. 使用數組存儲屬性名并排…

    25/2/17 <嵌入式筆記> 桌寵代碼解析

    這個寒假跟著做了一個開源的桌寵&#xff0c;我們來解析下代碼&#xff0c;加深理解。 代碼中有開源作者的名字。可以去B站搜著跟著做。 首先看下main代碼 #include "stm32f10x.h" // Device header #include "Delay.h" #include &quo…

    Qt中基于開源庫QRencode生成二維碼(附工程源碼鏈接)

    目錄 1.QRencode簡介 2.編譯qrencode 3.在Qt中直接使用QRencode源碼 3.1.添加源碼 3.2.用字符串生成二維碼 3.3.用二進制數據生成二維碼 3.4.界面設計 3.5.效果展示 4.注意事項 5.源碼下載 1.QRencode簡介 QRencode是一個開源的庫&#xff0c;專門用于生成二維碼&…

    【Android開發】華為手機安裝包安裝失敗“應用是非正式版發布版本,當前設備不支持安裝”問題解決

    問題描述 我們將Debug版本的安裝包發送到手機上安裝&#xff0c;會發現華為手機有如下情況 解決辦法 在文件gradle.properties中粘貼代碼&#xff1a; android.injected.testOnlyfalse 最后點擊“Sync now”&#xff0c;等待重新加載gradle資源即可 后面我們重新編譯Debug安裝…

    前端面試手寫--虛擬列表

    目錄 一.問題背景 二.代碼講解 三.代碼改裝 四.代碼發布 今天我們來學習如何手寫一個虛擬列表,本文將把虛擬列表進行拆分并講解,然后發布到npm網站上. 一.問題背景 為什么需要虛擬列表呢?這是因為在面對大量數據的時候,我們的瀏覽器會將所有數據都渲染到表格上面,但是渲…

    vue項目本地svg圖標使用

    提前準備&#xff1a; 1、一個本地的svg圖片 這個直接從網上找一個就行 2、文件整體目錄 安裝插件 npm i vite-plugin-svg-iconsvite.config.ts中配置插件 完整代碼 import { fileURLToPath, URL } from node:url import { resolve } from path import { defineConfig } f…

    Go: 使用VS Code配置Go項目支持Windows與Linux雙系統調試

    在現代軟件開發中&#xff0c;越來越多的開發者開始使用VS Code等集成開發環境&#xff08;IDE&#xff09;來提高生產力&#xff0c;特別是在支持遠程開發時。VS Code的遠程SSH功能&#xff0c;使得開發者可以在本地Windows電腦上&#xff0c;通過遠程SSH連接到Linux服務器&am…

    萌新學 Python 之集合 set

    集合 set&#xff1a;使用一對大括號&#xff0c;元素寫在大括號之間&#xff0c;使用逗號分隔 集合中的元素只能是不可變的數據類型&#xff0c;不能是列表、字典和集合 set1 {1, 2, 3} set2 {1, a, (1, 2, 3)} print(type(set1), type(set2)) # <class set> <c…

    python中使用數據庫sqlite3

    Python使用sqlite3數據庫 python3.x標準庫內置了SQLite3 查看sqlite的版本 import sqlite3 sqlite_version sqlite3.sqlite_version print(f"SQLite version: {sqlite_version}") 顯示 導入模塊連接sqlitte3 import sqlite3 consqlite3.connect("d:/fi…

    maven使用默認settings.xml配置時,Idea基于pom.xml更新依賴時報錯,有些組件下載時連接超時

    1、問題背景&#xff1a;maven使用默認settings.xml配置時&#xff0c;Idea基于pom.xml更新依賴時報錯&#xff0c;有些組件下載時連接超時&#xff0c; 通過日志發下&#xff0c;去連接maven.org網站下載依賴&#xff0c;有時候肯定會超時。 2、解決辦法&#xff1a;使用國外…

    小狐貍ai3.1.2版本源碼無授權版本內 含搭建教程+各種上線教程

    內容目錄 一、詳細介紹小狐貍3.1.2版本源碼&#xff0c;新增deepseek接口 文件夾說明&#xff1a; 1、后端&#xff1a;文件夾是后臺文件 5、.sql文件是數據庫文件后臺安裝步驟&#xff1a; 1、在寶塔新建個站點&#xff0c;php版本使用7.4&#xff0c;將“后端”文件夾里的文件…