亚洲乱色熟女一区二区三区丝袜,天堂√中文最新版在线,亚洲精品乱码久久久久久蜜桃图片,香蕉久久久久久av成人,欧美丰满熟妇bbb久久久

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

RocketMQ介紹及部署

admin
2025年7月22日 10:57 本文熱度 172

RocketMQ介紹

RocketMQ是一款由阿里巴巴開源的分布式消息中間件。它具有低延遲、高吞吐量、高可用性和高可靠性等特點,適用于構(gòu)建具有海量消息堆積和異步解耦功能的應(yīng)用系統(tǒng)。

1.1.基本概念

  • ? 生產(chǎn)者(Producer):也稱為消息發(fā)布者,是RocketMQ中用來構(gòu)建并傳輸消息到服務(wù)端的運行實體。
  • ? 主題(Topic):Topic是RocketMQ中消息傳輸和存儲的頂層容器,用于標識同一類業(yè)務(wù)邏輯的消息;Topic是一個邏輯概念,并不是實際的消息容器;
  • ? 消息隊列(MessageQueue):隊列是RocketMQ中消息存儲和傳輸?shù)膶嶋H容器,也是消息的最小存儲單元。
  • ? 消費者(Consumer):也稱為消息訂閱者,是RocketMQ中用來接收并處理消息的運行實體。
  • ? 消費者組(ConsumerGroup):消費者組是RocketMQ中承載多個消費行為一致的消費者負載均衡分組。和消費者不同,消費者組是一個邏輯概念。
  • ? NameServer:可以理解成注冊中心,負責(zé)更新和發(fā)現(xiàn)Broker服務(wù)。在NameServer的集群中,NameServer與NameServer之間是沒有任何通信的,它是無狀態(tài)的。
  • ? Broker:可以理解為消息中轉(zhuǎn)角色,負責(zé)消息的存儲和轉(zhuǎn)發(fā),接收生產(chǎn)者產(chǎn)生的消息并持久化消息;當用戶發(fā)送的消息被發(fā)送到Broker時,Broker會將消息轉(zhuǎn)發(fā)到與之關(guān)聯(lián)的Topic中,以便讓更多的接收者進行處理。

1.2消息模型

1.3.部署模型

2.下載RocketMQ

RocketMQ的官網(wǎng)地址:https://rocketmq.apache.org/
Github地址:https://github.com/apache/rocketmq
下載地址:https://rocketmq.apache.org/zh/download/ 當前最新的版本為5.1.0,本教程安裝5.1.0版本。

3.安裝RocketMQ

3.1.安裝前需要準備一個CentOS7的Linux機器,使用的Linux版本如下:

uname -a

3.2.安裝JDK

推薦使用JDK1.8版本。可以使用課件資料包或者自行下載tar.gz包。

1.統(tǒng)一規(guī)劃目錄,創(chuàng)建app文件夾,在創(chuàng)建jdk文件夾,將jdk的包上載到 /app/jdk目錄下然后解壓

cd ..
mkdir app
cd app/
mkdir jdk
cd jdk/
tar -zxvf jdk-8u171-linux-x64.tar.gz

2.配置jdk環(huán)境變量,將JAVA_HOME變量加上;將path路徑替換成相應(yīng)配置

vi /etc/profile

#
jdk解壓后的目錄路徑
export JAVA_HOME=/app/jdk/jdk1.8.0_171/
PATH=$JAVA_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin

3.更新配置并查看jdk版本,顯示以下信息則安裝成功。

source /etc/profile
java -version

3.3.安裝RocketMQ

3.3.1.將安裝包上傳到/app/rocketMQ目錄下

先在app目錄下創(chuàng)建rocketMQ文件夾
cd ..
mkdir rocketMQ

上傳到/app/rocketMQ目錄然后解壓(也可以先解壓在上傳,推薦上傳后解壓)
cd rocketMQ/
unzip rocketmq-all-5.1.0-bin-rease.zip

3.3.2 配置rocketMQ環(huán)境變量

#將ROCKETMQ_HOME變量加上,在path路徑加上$ROCKETMQ_HOME/bin:

vi /etc/profile
#rocketMQ路徑
export ROCKETMQ_HOME=/app/rocketMQ/rocketmq-all-5.1.0-bin-rease
export PATH=$ROCKETMQ_HOME/bin:JAVA_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin
#namesrc后續(xù)broker會使用到,先加上
export NAMESRC_ADDR='woker1:9876;worker2:9876;worker3:9876'

3.3.3 更新配置

source /etc/profile

ROCKETMQ_HOME的環(huán)境變量是必須要單獨配置的,如果不配置的話,啟動NameSever和Broker都會報錯。這個環(huán)境變量的作用是用來加載$ROCKETMQ_HOME/conf下的除broker.conf以外的幾個配置文件。所以實際情況中,可以不按這個配置,但是一定要能找到配置文件。這樣RocketMQ就安裝完成了。

3.4.RocketMQ工作原理

官網(wǎng)5.0版本速覽鏈接:https://rocketmq.apache.org/zh/version/

RocketMQ5.0 引入了全新的彈性無狀態(tài)代理模式,將當前的Broker職責(zé)進行拆分,對于客戶端協(xié)議適配、權(quán)限管理、消費管理等計算邏輯進行抽離,獨立無狀態(tài)的代理角色提供服務(wù),Broker則繼續(xù)專注于存儲能力的持續(xù)優(yōu)化。值得注意的是RocketMQ 5.0的全新模式是和4.0的極簡架構(gòu)模式相容相通的,5.0的代理架構(gòu)完全可以以Local模式運行,實現(xiàn)與4.0架構(gòu)完全一致的效果。開發(fā)者可以根據(jù)自身的業(yè)務(wù)場景自由選擇架構(gòu)部署,本教程也是部署的Local模式。

RocketMQ啟動流程如下:

  • ? 啟動NameServer
  • ? 啟動Broker

3.5 NameServer服務(wù)搭建

啟動NameServer非常簡單,在$ROCKETMQ_HOME/bin目錄下有個mqnamesrv。直接執(zhí)行這個腳本就可以啟動RocketMQ的NameServer服務(wù)。
由于RocketMQ默認預(yù)設(shè)的JVM內(nèi)存是4G,這是RocketMQ給我們的最佳配置。但是通常我們用虛擬機的話都是不夠4G內(nèi)存的,所以需要調(diào)整下JVM內(nèi)存大小。修改的方式是直接修改runserver.sh。

3.5.1 修改NameServer啟動配置

cd rocketmq-all-5.1.0-bin-release/bin/
vi runserver.sh
將JAVA_OPT="${JAVA_OPT} -Server-Xms4g -Xmx4g -Xmn2g 修改為 -server Xms512m -Xmx512m -Xmn256m"

3.5.2 啟動NameServer

NameServer的配置修改完成,然后我們用靜默啟動的方式啟動NameServer服務(wù),啟動完成后在nohup.out里看到這一條關(guān)鍵日志就是啟動成功。并且使用jps指令可以看到有一個NamesrvStartup進程。

#靜默啟動
nohup ./mqnamesrc &

#
查看日志
tail -f nohup.out

3.6 Broker服務(wù)搭建

啟動Broker的腳本是runbroker.sh。Broker的默認預(yù)設(shè)內(nèi)存是8G,啟動前,如果內(nèi)存不夠,同樣需要調(diào)整下JVM內(nèi)存。修改的方式是直接修改runbroker.sh。

3.6.1 修改broker啟動腳本配置

vi runbroker.sh
#將JAVA_OPT="${JAVA_OPT} -server Xms8g -Xmx8g" 修改為JAVA_OPT="${JAVA_OPT} -server Xms512m -Xmx512m"

3.6.2 修改broker配置文件

#修改Broker資源配置文件,允許自動創(chuàng)建Topic
cd ../conf/
vi broker.conf

#
允許自動創(chuàng)建topic
autoCreateTopicEnable=true
#添加nameserver地址
namesrvAddr=localhost:9876

3.6.3 啟動broker服務(wù)

Broker的配置修改完成,然后我們用靜默啟動的方式啟動Broker服務(wù),同樣是檢查nohup.out日志, 并且jps指令可以看到一個BrokerStartup進程。

1.回到bin目錄下,靜默啟動Broker
cd ../bin
nohup ./mqbroker -c ../conf/broker.conf &
2.查看日志,顯示如下即顯示成功********每次啟動broker時都要關(guān)注是否注冊到目標nameserver上(name server isworker:9876)
tail -f nohup.out
jps

3.7 測試RocketMQ消息發(fā)送與消費

在RocketMQ的安裝包中,提供了一個tools.sh工具可以用來在命令行快速驗證RocketMQ服務(wù)。

1.我們在bin錄下執(zhí)行以下命令測試消息發(fā)送,默認會發(fā)1000條消息,發(fā)送完成自動關(guān)閉

export NAMESRV_ADDR=‘localhost:9876’
./tools.sh org.apache.rocketmq.example.quickstart.Producer

2.出現(xiàn)以下提示則代表消息發(fā)送成功

3 執(zhí)行一下命令測試消息接收,Consumer執(zhí)行不會自動關(guān)閉,會一直掛起等待新消息過來

export NAMESRV_ADDR=‘localhost:9876’
./tools.sh org.apache.rocketmq.example.quickstart.Consumer

4 出現(xiàn)以下提示則代表消息接收成功

3.8 關(guān)閉RocketMQ服務(wù)

在bin目錄下通過腳本關(guān)閉服務(wù)

1 關(guān)閉Broker

sh ./mqshutdown broker

2 關(guān)閉NameServer

sh ./mqshutdown namesrv

3 查看服務(wù)

至此RockMQ單機測試成功,接下來搭建集群。

?

閱讀原文:https://mp.weixin.qq.com/s/NyBCC2E3EfCEuHRuGFtTiw


該文章在 2025/7/22 10:57:19 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved