部署rocketmq集群

容器化部署RocketMQ5.3.1集群
背景: 生產環境單機的MQ不具有高可用,所以我們應該部署成集群模式,這里給大家部署一個雙主雙從異步復制的Broker集群
一、安裝docker
yum install -y docker
systemctl enable docker --now
# 單機部署參考:
https://www.cnblogs.com/hsyw/p/17429834.html
二、集群部署
2.1、基礎概念介紹
單節點 :
優點:本地開發測試,配置簡單,同步刷盤消息一條都不會丟
缺點:不可靠,如果宕機,會導致服務不可用

主從(異步、同步雙寫) :
優點:同步雙寫消息不丟失, 異步復制存在少量丟失 ,主節點宕機,從節點可以對外提供消息的消費,但是不支持寫入
缺點:主備有短暫消息延遲,毫秒級,目前不支持自動切換,需要腳本或者其他程序進行檢測然后進行停止broker,
重啟讓從節點成為主節點

雙主:
優點:配置簡單, 可以靠配置RAID磁盤陣列保證消息可靠,異步刷盤丟失少量消息
缺點: master機器宕機期間,未被消費的消息在機器恢復之前不可消費,實時性會受到影響

雙主雙從,多主多從模式(異步復制)我們這里采用這種
優點:磁盤損壞,消息丟失的非常少,消息實時性不會受影響,Master 宕機后,消費者仍然可以從Slave消費
缺點:主備有短暫消息延遲,毫秒級,如果Master宕機,磁盤損壞情況,會丟失少量消息

雙主雙從,多主多從模式(同步雙寫)
優點:同步雙寫方式,主備都寫成功,向應用才返回成功,服務可用性與數據可用性都非常高
缺點:性能比異步復制模式略低,主宕機后,備機不能自動切換為主機

概念
rocketmq分為Name Server和Broker Server

名字服務(Name Server)
名稱服務充當路由消息的提供者。生產者或消費者能夠通過名字服務查找各主題相應的Broker IP列表。多個Namesrv實例組成集群,但相互獨立,沒有信息交換。
是Topic路由注冊中心,端口默認為9876

代理服務器(Broker Server)
消息中轉角色,負責存儲消息、轉發消息。代理服務器在RocketMQ系統中負責接收從生產者發送來的消息并存儲、同時為消費者的拉取請求作準備。代理服務器也存儲消息相關的元數據,包括消費者組、消費進度偏移和主題和隊列消息等。

端口有三個
listenPort:默認10911,接受客戶端連接的監聽端口,作為對producer和consumer使用服務的端口號,可以通過配置文件改
haListenPort:默認為listenPort + 1,高可用服務監聽端口,主要用于slave同master同步
fastListenPort:默認為listenPort -2, 主要是fastRemotingServer服務使用,用于VIP通道

2.2、集群規劃、部署
雙主雙從異步復制的Broker集群

集群角色劃分如下

主機名    IP    功能    集群角色
node1    10.7.8.73    NameServer+Broker    Master01+Slave02
node2    10.7.215.96    NameServer+Broker    Master02+Slave01
2.2.1、部署rmqnamesrv
兩臺的rmqnamesrv節點都直接運行即可【10.7.8.73、10.7.215.96】


mkdir -p /rocketmq/r

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

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

相關文章

mysql的函數(第一期)

一、字符串函數?? 處理文本數據,常用函數: ??CONCAT(str1, str2, ...)?? ??作用??:拼接字符串。??示例??:SELECT CONCAT(Hello, , World); → Hello World??注意??:若任一參數為 NULL,…

Linux下的網絡管理

注意:本文使用的Linux系統版本為Red Hat Enterprise Linux 9 (RHEL 9)。 在RHEL9上,使用NM(NetworkManager)進行網絡配置,ifcfg (也稱為 文件)將不再是網絡配置文件的主存儲。雖然 ifcfg 樣式仍…

游戲引擎學習第233天

原地歸并排序地方很蒙圈 game_render_group.cpp:注意當前的SortEntries函數是O(n^2),并引入一個提前退出的條件 其實我們不太討論這些話題,因為我并沒有深入研究過計算機科學,所以我也沒有太多內容可以分享。但希望在過去幾天里…

從《周游記3》演繹歌劇版《菊花臺》,周杰倫婚禮曲目意大利文版驚喜亮相

今天(4月19日)22:00,由魔胴西西里咖啡冠名的戶外實境互動綜藝《周游記3》第四期即將播出。本期節目中,“J式之旅”發起人周杰倫和林暐恒、杜國璋、陳冠霖、陳冠廷,將繼續意大利之旅,從那不勒斯的百年老店到…

Linux系統編程 day6 進程間通信mmap

父子共享的信息:文件描述符,mmap建立的共享映射區(MAP_SHARED) mmap父子間進程通信 var的時候 :讀時共享,寫時復制 父進程先創建映射區,指定共享MAP_SHARED權限 , fork創建子進程…

opencv--圖像處理

圖像處理技術 圖像處理技術是利用計算機對圖像進行計算,分析和處理的技術,包括數字圖像處理和計算機視覺兩大領域。 對圖像的處理包括濾波,縮放,分割,識別(兩種信息對比)等。 鏈接 數字圖像處理 1. 數字圖像處理(Digital Image Processing) 數字圖像處理主要關注圖…

Spring 學習筆記之 @Transactional詳解

一、數據庫事務基礎 數據庫事務(Transaction)是數據庫管理系統中用于確保數據一致性和完整性的一種機制。它是一組操作的集合,這些操作要么全部成功,要么全部失敗,從而保證數據庫狀態的正確性。 1.1 事務的基本概念 定…

【Openlayers】Openlayers 入門教程

Openlayers 入門教程 -系列文章列表 openlayers 入門教程(一):openlayers簡介 openlayers 入門教程(二):Map 篇 openlayers 入門教程(三):View 篇 openlayers 入門教程&a…

【Lua語言】Lua語言快速入門

初始Lua Lua是一種輕量小巧的腳本語言,他使用標準C語言編寫并以源代碼形式開放。這意味著Lua虛擬機可以很方便的嵌入別的程序中,從而為應用程序提供靈活的擴展和定制功能。同時,在目前腳本引擎中,Lua的運行速度占有絕對優勢。 變…

車載診斷新架構--- SOVD初入門(上)

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 周末洗了一個澡,換了一身衣服,出了門卻不知道去哪兒,不知道去找誰,漫無目的走著,大概這就是成年人最深的孤獨吧! 舊人不知我近況,新人不知我過…

linux查看目錄相關命令

查看目錄命令 學習目標 能夠使用Linux命令查看目錄信息 1. 查看目錄命令的使用 命令說明ls查看當前目錄信息tree以樹狀方式顯示目錄信息 ls命令效果圖: tree命令效果圖: 2. 查看當前目錄路徑 命令說明pwd查看當前目錄路徑 pwd命令效果圖: 3. 清除終端內容 命令說明clear…

JavaScript中的Event事件對象詳解

一、事件對象(Event)概述 1. 事件對象的定義 event 對象是瀏覽器自動生成的對象,當用戶與頁面進行交互時(如點擊、鍵盤輸入、鼠標移動等),事件觸發時就會自動傳遞給事件處理函數。event 對象包含了與事件…

OSPF綜合實驗(HCIP)

1,R5為ISP,其上只能配置Ip地址;R4作為企業邊界路由器, 出口公網地址需要通過ppp協議獲取,并進行chap認證 2,整個OSPF環境IP基于172.16.0.0/16劃分; 3,所有設備均可訪問R5的環回&…

2024-04-19| Java: Documented注解學習 JavaDoc

在 Java 中,Documented 是一個元注解(meta-annotation),用于標記其他注解,表明這些注解應該被包含在 JavaDoc 文檔中。以下是關于 Documented 注解的作用的簡要說明: 作用 記錄注解信息到 JavaDoc&#x…

15.Chromium指紋瀏覽器開發教程之WebAudio指紋定制

WebAudio指紋概述 瀏覽器中的 WebAudio API 提供了豐富的功能,其中包括了大量生成和處理音頻數據的API。WebAudio API 的音頻指紋技術是一種利用音頻信號的特征來唯一標識音頻的技術。因為WebAudio API 提供了豐富的音頻處理功能,包括合成、過濾、分析等…

2025年贛教云智慧作業微課PPT模板

江西的老師們注意,2025年贛教云智慧作業微課PPT模版和往年不一樣,千萬不要搞錯了,圖上的才是正確的2025年的贛教云智慧作業微課PPT模版,贛教云智慧作業官網有問題,無法正確下載該模板,需要該模板的&#xf…

2.5.1DOS下常用工具 curl,netstat,telnet命令使用

curl命令 Win10及以上系統默認已安裝Curl,打開命令提示符輸入 curl --help,若顯示幫助信息則無需安裝 ??手動安裝方法?? 官網下載:訪問 curl官網 選擇Windows版本curl for Windows若需在 Windows XP 等舊系統使用,需選擇更…

使用Redis實現實時排行榜

為了實現一個實時排行榜系統,我們可以使用Redis的有序集合(ZSet),其底層通常是使用跳躍表實現的。有序集合允許我們按照分數(score)對成員(member)進行排序,因此非常適合…

Linux——firewalld防火墻(筆記)

目錄 一:Firewalld防火墻的概述 (1)firewalld簡介 (2)firewalld&iptables的關系 (3)firewalld與iptables service的區別 1. ?規則管理方式? 2. ?默認策略與設計邏輯? 3. ?配置文…

JS中實現類似sleep、wait、delay的延時功能

前言 編寫代碼時很多時候需要進行流程化的操作,各個流程間通常需要等待一定時間,這在很多語言中通常可以使用 sleep 、 wait 、 delay 等函數來實現。JavaScript原生并沒有類似的功能,想要延時通常就是使用 setTimeout(functionRef, delay) …