国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Rocketmq面試(一) Rocketmq同一個消費組訂閱不同的Tag,會有什么問題?

這篇具有很好參考價值的文章主要介紹了Rocketmq面試(一) Rocketmq同一個消費組訂閱不同的Tag,會有什么問題?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

先說結果:會造成數(shù)據(jù)丟失

再說依據(jù):

RocketMQ要求同一個消費者組內的消費者必須訂閱關系一致,如果訂閱關系不一致會出現(xiàn)消息丟失的問題。

官網入口:訂閱關系一致 | RocketMQ

不想看官網的,直接看結論

什么叫訂閱關系一致

1.訂閱的Topic相同,或者訂閱的Topic相同 tag也相同,或者Topic相同,tag的順序也相同。

Rocketmq面試(一) Rocketmq同一個消費組訂閱不同的Tag,會有什么問題?

2.什么叫不一致呢?

就是訂閱的Topic不同,或者Topic相同,但是Tag不同,或者Topic相同tag也相同,但是順序不同

Rocketmq面試(一) Rocketmq同一個消費組訂閱不同的Tag,會有什么問題?

?再說為什么會導致丟失數(shù)據(jù)呢?

為了 提高消費效率,RocketMQ 引入了 ConsumeQueue,ConsumerQueue 中保存消息在 CommitLog 文件中的物理偏移量。ConsumerQueue 中的元素內容如下:

  • 前 8 個字節(jié)記錄消息在 CommitLog 中的偏移量。

  • 中間 4 個字節(jié)記錄消息消息大小。

  • 最后 8 個字節(jié)記錄消息中 tag 的 hashcode。

Rocketmq面試(一) Rocketmq同一個消費組訂閱不同的Tag,會有什么問題?

?關鍵在于最后這個tag的hashcode值,這個 tag 的作用是過濾消息,假如一個 Consumer 訂閱了 Topic1 中的 Tag1,那這個 Consumer ?拉取消息時,首先從 Name Server 獲取訂閱關系,得到當前 Consumer 訂閱的所有 tag 的 hashcode 集合 codeSet。每次從 ConsumerQueue 獲取一條記錄,就要判斷最后 8 個字節(jié) tag hashcode 是否在 codeSet 中,比如 Tag2 不在 codeSet 中,就會被過濾掉。

Rocketmq面試(一) Rocketmq同一個消費組訂閱不同的Tag,會有什么問題?

?如上圖,比如Topic1里面有個TagA,TagB。 consumer1訂閱了TagA,consumer訂閱了TagB,那 Consumer1 從 ConsumeQueue1 和 ConsumeQueue2 消費消息時,就會把 TagB?中的消息過濾掉,這樣即使 Consumer2 訂閱了 TagB,也不能消費到 ConsumeQueue1 和 ConsumeQueue2 里 TagB?中的消息了。

最后一個問題,怎么看是不是存在訂閱關系不一致的 現(xiàn)象?

問題描述

在使用消息隊列RocketMQ版實例時,可能會出現(xiàn)訂閱關系不一致的情況,具體的問題現(xiàn)象如下:

  • 消息隊列RocketMQ版控制臺中訂閱關系是否一致顯示為否。
  • 消費者(Consumer)實例未收到訂閱的消息。

請參考以下步驟進行檢查

您可在消息消息隊列RocketMQ版控制臺Group 詳情頁面查看指定Group的訂閱關系是否一致。若查詢結果不一致,請參見本文(3 常見訂閱關系不一致問題)排查Consumer實例的消費代碼。文章來源地址http://www.zghlxwxcb.cn/news/detail-470169.html

  1. 檢查您Consumer實例中與訂閱相關的配置代碼,確保配置同一個Group ID的所有Consumer實例均訂閱相同的Topic及Tag。
  2. 重啟客戶端應用。
  3. 登錄消息隊列RocketMQ版控制臺,在左側導航欄中單擊實例列表,選擇您的目標實例,進入實例詳情頁面。
  4. 在左側導航欄中單擊Group管理,選擇對應的協(xié)議后,單擊消費者狀態(tài),確認訂閱關系是否一致顯示為是。
  5. 測試并確認消息能夠被預期的Consumer實例所消費。

到了這里,關于Rocketmq面試(一) Rocketmq同一個消費組訂閱不同的Tag,會有什么問題?的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 為什么訪問同一個網址卻返回不同的內容

    為什么訪問同一個網址卻返回不同的內容

    哈嘍大家好,我是咸魚。今天給大家分享一個關于 HTTP 有趣的現(xiàn)象 鏈接:https://csvbase.com/meripaterson/stock-exchanges 我們用瀏覽器訪問這個鏈接,可以看到下面的網頁 但如果我們使用 curl 命令去訪問這個鏈接呢? 可以看到返回的是一個 csv 文件 我們用 wget 命令下載下來看看 可以

    2024年02月03日
    瀏覽(100)
  • 【阿里云服務器數(shù)據(jù)遷移】 同一個賬號 不同區(qū)域服務器

    【阿里云服務器數(shù)據(jù)遷移】 同一個賬號 不同區(qū)域服務器

    假如說一臺云服務器要過期了,現(xiàn)在新買了一臺,有的人會煩惱又要將重新在新的服務器上裝環(huán)境,部署上線舊服務器上的網站項目, 但是不必煩惱,本文將介紹如何快速將就舊的服務器上的數(shù)據(jù)遷移到新的服務器上. 包括所有的環(huán)境和網站項目噢 !? 填寫 鏡像名稱和描述. 選擇自定

    2024年01月24日
    瀏覽(96)
  • Tomcat與Nginx多項目部署,同一個ip不同端口部署,完整教程

    Tomcat與Nginx多項目部署,同一個ip不同端口部署,完整教程

    多項目,同IP,不同端口部署訪問。 部署一個PC項目,訪問地址:http://192.168.31.1:8085/項目名稱 部署一個dist項目,訪問地址:http://192.168.31.1:8086/項目名稱 注:以上只是舉例! 之前沒有這樣的經驗,也沒有查到整合的資料,所以整合記錄一下~ 不推薦低版本或最新版本,最新版

    2024年02月03日
    瀏覽(93)
  • 如何在rabbitmq中實現(xiàn)一個生產者,多個消費者,多個消費者都能收到同一條消息

    如何在rabbitmq中實現(xiàn)一個生產者,多個消費者,多個消費者都能收到同一條消息

    場景:用戶登錄,邀請其它用戶進行視頻會議,收到邀請的用戶進入會議 rabbitmq實現(xiàn)思路: 選型:發(fā)布訂閱模式(Publish/Subscribe) 一個生產者,多個消費者,每一個消費者都有自己的一個隊列,生產者沒有將消息直接發(fā)送到隊列,而是發(fā)送到了交換機,每個隊列綁定交換機,

    2023年04月25日
    瀏覽(25)
  • Java中不同對象調用該實例方法返回值是同一個地址空間嗎?

    結論 不一定。 基本類型返回的是值 引用數(shù)據(jù)類型返回的是引用地址(是否同一個引用看是否用到常量池) \\\'==\\\' 基本類型比較的是兩者的值是否相同 而引用類型比較兩者的是引用地址是否相同 返回的值相同 \\\'==\\\'就為true 返回的引用地址相同 \\\'==\\\'就是true

    2023年04月25日
    瀏覽(94)
  • jmeter 不同請求使用同一個隨機函數(shù),線程數(shù)超過1后取值相同的解決方法

    jmeter 不同請求使用同一個隨機函數(shù),線程數(shù)超過1后取值相同的解決方法

    jmeter 不同請求使用同一個隨機函數(shù),線程數(shù)超過1后取值相同的解決方法 目的:jmeter 中同一線程組的不同請求使用同一個隨機函數(shù),生成的隨機數(shù)在不同請求中要是一樣的,而且如果線程數(shù)大于1,每次迭代中的隨機數(shù)要更新 1)如果只是在測試計劃中添加這個變量-隨機數(shù)函

    2024年02月14日
    瀏覽(85)
  • Django的mysql數(shù)據(jù)庫問題:同一個模型(同一張表)中的不同記錄也是可以相互關聯(lián)的【使用“自引用關系”】

    是的,確實可以在Django的模型中使用外鍵來建立同一模型中不同記錄之間的關聯(lián)關系。這樣的關聯(lián)關系被稱為自引用關系(self-referential relationship)或者自關聯(lián)關系。通過在模型中定義外鍵字段,你可以使模型的實例與同一模型中的其他實例產生關聯(lián)。 在Django中,這通常通過

    2024年01月18日
    瀏覽(104)
  • 【pytorch】同一個模型model.train()和model.eval()模式下的輸出完全不同

    測試時為什么要使用model.eval() - 小筱痕 - 博客園 (cnblogs.com) 輸出不同的原因是由于student模型中的某些層的行為不同。一些層,如dropout和batch?normalization,在訓練和評估過程中的行為是不同的。 在訓練過程中,dropout層會隨機將一部分輸入置為零,這有助于防止過擬合。dropou

    2024年02月12日
    瀏覽(95)
  • SAP變式物料之采購<轉載>,通過可配置物料實現(xiàn)同一個物料不同型號下采購訂單的時候出現(xiàn)不同的價格

    SAP變式物料之采購<轉載>,通過可配置物料實現(xiàn)同一個物料不同型號下采購訂單的時候出現(xiàn)不同的價格

    原文鏈接:https://blog.csdn.net/weixin_42137700/article/details/125104140 SAP一般物料采購,一個物料只有一個價格,在采購定價的時候也是同一個物料對應一個價格,但是有些場景中,比如,一個電腦不同的型號,不同的內存價格是不一樣的,這個時候就需要SAP的變式物料了,在下PO的時

    2024年01月20日
    瀏覽(92)
  • springboot整合rocketmq:一個消費者組怎么訂閱多個topic

    springboot整合rocketmq:一個消費者組怎么訂閱多個topic

    ????????一個消費者組中的所有消費者訂閱關系,可以多個topic,多個tag,但是必須一致,否則就倒沫子了,如下圖: ?下面貼了如下結構的代碼 ?一個消費組(消費者)訂閱多個topic的代碼(只寫了一個消費組的,其他類似): 結果:

    2024年02月15日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包