RocketMQ 03

??今天是2025/04/14?21:58 day 20

總路線請移步主頁Java大綱相關文章

今天進行RocketMQ 6,7,8 個模塊的歸納

最近在忙畢設,更新有點慢,見諒

首先是RocketMQ 的相關內容概括的思維導圖

6. 安全機制

6.1 ACL 訪問控制
  • 核心功能

    • 權限分級:通過用戶(User)和密鑰(AccessKey/SecretKey)實現身份驗證,支持細粒度權限控制(如發布、訂閱、管理權限)。

    • 資源隔離:可針對 Topic、Consumer Group 等資源設置訪問權限(白名單/黑名單)。

    • IP 白名單:限制 Broker 或客戶端的訪問 IP,防止未授權節點接入。

  • 配置示例

    # Broker 開啟 ACL
    aclEnable=true
    # 配置 ACL 規則文件路徑
    aclFile=/path/to/acl.yml
6.2 傳輸加密
  • TLS/SSL 加密

    • 通信加密:支持客戶端與 Broker 之間、Broker 主從節點之間的 TLS 加密傳輸。

    • 證書管理:需配置 CA 證書、服務端證書和私鑰,防止中間人攻擊。

  • 配置步驟

    1. 生成證書(使用 OpenSSL 或購買商業證書)。

    2. Broker 配置 TLS:

      # 啟用 TLS
      tlsEnable=true
      tlsServerCertPath=/path/to/server.crt
      tlsServerKeyPath=/path/to/server.key
    3. 客戶端配置 TLS:在 Producer/Consumer 代碼中加載信任證書鏈。

6.3 審計與日志安全
  • 操作審計:記錄關鍵操作(如 Topic 創建、權限變更),支持對接日志分析系統(如 ELK)。

  • 敏感信息脫敏:日志中自動隱藏 AccessKey 等敏感字段。


7. 典型應用場景

7.1 流量削峰填谷
  • 場景說明

    • 應對突發流量(如電商秒殺、搶購活動),將瞬時高并發請求轉為異步消息,由下游服務按處理能力消費。

  • RocketMQ 優勢

    • 高吞吐(單機百萬級 TPS)和堆積能力(支持億級消息堆積)。

    • 動態擴展 Consumer 實例數量,快速消化積壓消息。

7.2 系統異步解耦
  • 場景說明

    • 微服務架構中,通過消息隊列解耦服務依賴(如訂單服務完成支付后,通知庫存服務扣減庫存)。

  • 實現模式

    • 事件驅動架構(EDA):服務間通過消息事件通信,提升系統彈性。

    • 最終一致性:結合事務消息保障跨服務操作的最終一致性。

7.3 分布式事務一致性
  • 場景說明

    • 解決跨數據庫、跨服務的分布式事務問題(如銀行轉賬:A 賬戶扣款成功后,B 賬戶需同步到賬)。

  • RocketMQ 方案

    • 事務消息機制

      1. 發送 Half 消息(預提交)。

      2. 執行本地事務(如更新數據庫)。

      3. 根據本地事務結果提交或回滾消息。

    • 事務回查:若 Producer 未及時提交狀態,Broker 主動回查事務結果,確保數據一致性。

7.4 大數據實時管道
  • 場景說明

    • 將業務系統數據實時同步到大數據平臺(如 Flink、Hadoop、Elasticsearch)。

  • 技術實現

    • RocketMQ Connect:內置多種數據源插件(MySQL、Kafka、HBase),實現低代碼數據同步。

    • 與 Flink 集成:通過 RocketMQ-Flink Connector 實現流式計算。


8. 生態集成

8.1 Spring/Spring Boot 整合
  • 核心依賴

    <dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-spring-boot-starter</artifactId><version>2.2.3</version>
    </dependency>
  • 關鍵配置

    rocketmq:name-server: 127.0.0.1:9876producer:group: my-producer-groupconsumer:group: my-consumer-group
  • 注解驅動開發

    • @RocketMQMessageListener:快速定義 Consumer。

    • RocketMQTemplate:簡化消息發送(支持同步/異步/事務消息)。

8.2 RocketMQ Connect
  • 功能定位

    • 實現 RocketMQ 與異構系統(數據庫、文件系統、其他消息隊列)的數據雙向同步。

  • 核心組件

    • Source Connector:從外部系統拉取數據寫入 RocketMQ。

    • Sink Connector:從 RocketMQ 消費數據寫入外部系統。

  • 使用場景

    • MySQL Binlog 實時同步到 Elasticsearch。

    • Kafka 數據遷移到 RocketMQ。

8.3 RocketMQ Streams
  • 輕量級流處理引擎

    • 支持類 SQL 語法實時處理消息流(過濾、聚合、Join 等操作)。

    • 與 Flink 對比

      特性RocketMQ StreamsApache Flink
      部署復雜度輕量級,內嵌于 RocketMQ需獨立集群,運維成本高
      功能范圍基礎流處理(適合簡單 ETL)完整流批一體計算(復雜場景)
  • 示例:統計訂單金額

    SELECT order_id, SUM(amount) 
    FROM orders 
    GROUP BY TUMBLE(proctime, INTERVAL '1' MINUTE), order_id

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

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

相關文章

深入理解瀏覽器的 Cookie:全面解析與實踐指南

在現代 Web 開發中&#xff0c;Cookie 扮演著舉足輕重的角色。它不僅用于管理用戶會話、記錄用戶偏好&#xff0c;還在行為追蹤、廣告投放以及安全防護等諸多方面發揮著重要作用。隨著互聯網應用場景的不斷豐富&#xff0c;Cookie 的使用和管理也日趨復雜&#xff0c;如何在保障…

在企業級部署中如何優化NVIDIA GPU和容器環境配置:最佳實踐與常見誤區20250414

在企業級部署中如何優化NVIDIA GPU和容器環境配置&#xff1a;最佳實踐與常見誤區 引言 隨著AI和深度學習技術的迅速發展&#xff0c;企業對GPU加速計算的需求愈加迫切。在此過程中&#xff0c;如何高效地配置宿主機與容器化環境&#xff0c;特別是利用NVIDIA GPU和相關工具&…

【秣厲科技】LabVIEW工具包——OpenCV 教程(19):拾遺 - imgproc 基礎操作(上)

文章目錄 前言imgproc 基礎操作&#xff08;上&#xff09;1. 顏色空間2. 直方圖3. 二值化4. 腐蝕、膨脹、開閉運算5. 梯度與輪廓6. 簡易繪圖7. 重映射 總結 前言 需要下載安裝OpenCV工具包的朋友&#xff0c;請前往 此處 &#xff1b;系統要求&#xff1a;Windows系統&#x…

Linux 下 Module 工具的介紹與使用

參考&#xff1a; https://www.fasteda.cn/post/22.html https://modules.readthedocs.io/en/latest/module.html Linux 下 Module 工具的介紹與使用 一、前言 在 Linux 中&#xff0c;當同一款編輯器、運行庫、軟件存在多個版本且多個版本都需要在不同的場景或人員使用時&a…

空間信息可視化——WebGIS前端實例(一)

技術棧&#xff1a;原生HTML 源代碼&#xff1a;CUGLin/WebGIS: This is a project of Spatial information visualization 4 全國貧困縣可視化系統 4.1 系統設計思想 黨的十九大報告明確指出,要“確保到2020年我國現行標準下農村貧困人口實現脫貧,貧困縣全部摘帽,解決區域…

單雙線程的理解 和 lua基礎語法

1.什么是單進程 &#xff0c;什么是多進程 當一個程序開始運行時&#xff0c;它就是一個進程&#xff0c;進程包括運行中的程序和程序所使用到的內存和系統資源。而一個進程又是由單個或多個線程所組成的。 1.1 像apache nginx 這類 服務器中間件就是多進程的軟件 &#xff0…

【Linux】VIM 編輯器,編輯加速引擎

目錄 vim中的五種常見模式介紹VIM的基本操作安裝VIMVIM中的模式切換 VIM指令集命令模式指令集底行模式指令集視圖模式指令集替換和插入模式 end vim中的五種常見模式介紹 正常/普通/命令模式【Normal mode】 控制屏幕光標的移動&#xff0c;字符、字或行的刪除&#xff0c;移動…

【Linux網絡】Socket 編程TCP

&#x1f308;個人主頁&#xff1a;秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343 &#x1f525; 系列專欄&#xff1a;https://blog.csdn.net/qinjh_/category_12891150.html 目錄 TCP socket API 詳解 socket(): bind(): listen(): accept(): connect V0…

記一次 .NET某固高運動卡測試 卡慢分析

一&#xff1a;背景 1. 講故事 年前有位朋友找到我&#xff0c;說他們的程序會偶發性卡慢 10s 鐘&#xff0c;在某些組合下會正常&#xff0c;某些組合下就會出現問題&#xff0c;解釋不了其中的原因&#xff0c;讓我幫忙看下怎么回事&#xff1f;截圖如下&#xff1a; priva…

硬件知識積累 單片機+ 光耦 + 繼電器需要注意的地方

1. 電路圖 與其數值描述 1.1 單片機引腳信號為 OPtoCoupler_control_4 PC817SB 為 光耦 繼電器 SRD-05VDC-SL-A 的線圈電壓為 67Ω。 2. 需注意的地方 1. 單片機的推挽輸出的電流最大為 25mA 2. 注意光耦的 CTR 參數 3. 注意繼電器線圈的 內阻 4. 繼電器的開啟電壓。 因為光耦…

IP組播技術與internet

1.MAC地址分為三類&#xff1a;廣播地址&#xff1b;組播地址&#xff1b;單播地址 2.由一個源向一組主機發送信息的傳輸方式稱為組播。 3.組播MAC地址&#xff0c;第一個字節的最后一位為1&#xff1b; 單播MAC地址&#xff0c;第一個字節的最后一位為0&#xff1b; 4.不能…

vue3+vite+ts使用daisyui/tailwindcss

vite創建vue3腳手架 npm init vitelatest myVue3 – --template vue cd .\myVue3\ npm i npm run dev 安裝tailwindcss/daisyui 依賴安裝 npm install -D tailwindcss postcss autoprefixer daisyui npx tailwindcss init -p 這條命令將生成postcss.config.js(因為加了…

大數據(7)Kafka核心原理揭秘:從入門到企業級實戰應用

目錄 一、大數據時代的技術革命1.1 消息中間件演進史1.2 Kafka核心設計哲學 二、架構深度解構2.1 核心組件拓撲2.1.1 副本同步機制&#xff08;ISR&#xff09; 2.2 生產者黑科技2.3 消費者演進路線 三、企業級應用實戰3.1 金融行業實時風控3.2 物聯網數據管道 四、生產環境優化…

spring boot大文件與多文件下載

一、簡單大文件下載&#xff1a; /*** 下載大文件* param path 路徑* param fileName 文件名* return* throws IOException*/ public static ResponseEntity<InputStreamResource> downloadFile(String path, String fileName) throws IOException {Path filePath Path…

第二節:React 基礎篇-受控組件 vs 非受控組件

一、場景題&#xff1a;設計一個實時搜索輸入框&#xff0c;說明選擇依據 受控組件 vs 非受控組件 核心區別 特征受控組件非受控組件數據管理由React狀態&#xff08;state&#xff09;控制通過DOM元素&#xff08;ref&#xff09;直接訪問更新時機每次輸入觸發onChange提交…

局部路由守衛

局部路由守衛為我們提供了更細粒度的路由控制&#xff0c;允許我們在特定的路由或組件級別添加鑒權和邏輯處理。局部路由守衛分為 path 守衛和 component 守衛&#xff0c;它們分別適用于不同的場景。 path 守衛&#xff08;路由守衛&#xff09; path 守衛用于在進入特定路由…

Android 16應用適配指南

Android 16版本特性介紹 https://developer.android.com/about/versions/16?hlzh-cn Android 16 所有功能和 API 概覽 https://developer.android.com/about/versions/16/features?hlzh-cn#language-switching Android 16 發布時間 Android 16 適配指南 Google開發平臺&…

android display 筆記(十二)CPU,GPU,DPU的區別

CPU&#xff08;Central Processing Unit&#xff09;通用計算&#xff1a;處理復雜邏輯、分支預測、多任務調度。 低延遲&#xff1a;優先快速響應單線程任務。 GPU&#xff08;Graphics Processing Unit&#xff09; 高吞吐量并行計算&#xff1a;適合大規模數據并行處理。…

音頻轉文本:如何識別音頻成文字

Python腳本:MP4轉MP3并語音識別為中文 以下是一個完整的Python腳本,可以將MP4視頻轉換為MP3音頻,然后使用語音識別模型將音頻轉換為中文文本。 準備工作 首先需要安裝必要的庫: pip install moviepy pydub SpeechRecognition openai-whisper完整腳本 import os from m…

理解 MCP 協議的數據傳遞:HTTP 之上的一層“殼子

以下是以 CSDN 博客的風格記錄你對 MCP 協議數據傳遞的理解和發現&#xff0c;內容涵蓋了 MCP 協議基于 HTTP 的本質、JSON-RPC 的“殼子”作用&#xff0c;以及為什么熟悉 HTTP 協議就足以理解 MCP 的數據傳遞。文章面向技術社區&#xff0c;結構清晰&#xff0c;適合分享。 理…