99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何解決RabbitMQ消息積壓的問(wèn)題?

阿銘linux ? 來(lái)源:阿銘linux ? 2023-04-27 10:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如果你在你簡(jiǎn)歷上寫(xiě)上了熟悉RabbitMQ,那么你在面試時(shí)很有可能會(huì)被問(wèn)到,如何解決MQ消息積壓?

要想將此問(wèn)題回答完美,一定要多方面考慮。首先,我們要搞清楚是什么原因?qū)е碌南⒎e壓。我列舉了以下三種:

1)流量變大,而RabbitMQ服務(wù)器配置偏低,導(dǎo)致消息產(chǎn)生速度大于消費(fèi)速度;

2)消費(fèi)者故障,從而消息只增不減;

3)程序邏輯設(shè)計(jì)有問(wèn)題,導(dǎo)致生產(chǎn)者持續(xù)生產(chǎn)消息,而消費(fèi)者不消費(fèi)或者消費(fèi)慢;

當(dāng)然,還有其它原因,上面三個(gè)已經(jīng)能覆蓋80%以上的問(wèn)題。下面就以這三種情況分別來(lái)說(shuō)說(shuō)如何應(yīng)對(duì)。

對(duì)于第一種情況,很明顯就是資源不夠了,解決方法也很簡(jiǎn)單,擴(kuò)容即可。可以縱向擴(kuò)容,即增加服務(wù)器資源,該加內(nèi)存加內(nèi)存,該加CPU加CPU。

如果縱向擴(kuò)容不方便,那就橫向擴(kuò)容,即將單機(jī)改為集群模式,增加集群節(jié)點(diǎn),并且增加消費(fèi)者數(shù)量,讓消費(fèi)速度快起來(lái)!例如,原來(lái)是5個(gè)消費(fèi)者,現(xiàn)在變成50個(gè)消費(fèi)者!

對(duì)于第二種情況,要通過(guò)查看日志搞清楚為什么消費(fèi)者會(huì)故障,據(jù)我多年經(jīng)驗(yàn),發(fā)生此類問(wèn)題大概率是程序代碼寫(xiě)的不夠完美,跑著跑著導(dǎo)致內(nèi)存溢出,然后消費(fèi)者進(jìn)程被殺。要想永久解決此問(wèn)題,需要結(jié)合日志分析程序代碼,優(yōu)化代碼。臨時(shí)解決方法是寫(xiě)監(jiān)控腳本,如果發(fā)現(xiàn)消費(fèi)者進(jìn)程中斷,需要重啟服務(wù)!

再來(lái)說(shuō)第三個(gè),這種情況發(fā)生的概率其實(shí)并不高,總之就是程序邏輯問(wèn)題,判斷的方法也很簡(jiǎn)單,持續(xù)觀察服務(wù)器的資源耗費(fèi)情況,如果內(nèi)存、CPU一切都正常,但就是隊(duì)列持續(xù)增長(zhǎng),而消費(fèi)速度非常慢。此時(shí),就需要好好查查程序代碼了。當(dāng)然,可以嘗試增加消費(fèi)者數(shù)量,看看是否有好轉(zhuǎn)。

上面說(shuō)的只是“亡羊補(bǔ)牢”的操作,但還沒(méi)有說(shuō)如何將當(dāng)前已經(jīng)積壓的隊(duì)列給快速消耗掉。

相信,當(dāng)我們發(fā)現(xiàn)消息積壓時(shí),想必問(wèn)題已經(jīng)比較嚴(yán)重了,或者說(shuō)已經(jīng)影響到業(yè)務(wù)正常運(yùn)轉(zhuǎn)了,那么當(dāng)務(wù)之急肯定是需要先將業(yè)務(wù)恢復(fù)正常。對(duì)于上面第二種情況,直接重啟相關(guān)服務(wù),讓消費(fèi)者恢復(fù)正常,定是首當(dāng)其沖。

除此之外,還有一種“斷尾求生”的騷操作,就是新開(kāi)一個(gè)隊(duì)列,將新產(chǎn)生的消息到新隊(duì)列里,消費(fèi)者也到新隊(duì)列里消費(fèi)。而老的隊(duì)列,則需要做一個(gè)異步處理,慢慢消費(fèi)掉即可。

當(dāng)然,如果積壓的消息不怎么重要,可有可無(wú)的話,那干脆直接刪除掉,這樣大家都省事不是。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11076

    瀏覽量

    216986
  • rabbitmq
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    1153

原文標(biāo)題:面試題:如何解決RabbitMQ消息積壓

文章出處:【微信號(hào):aming_linux,微信公眾號(hào):阿銘linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    RabbitMQ消息隊(duì)列解決方案

    在現(xiàn)代分布式系統(tǒng)架構(gòu)中,消息隊(duì)列作為核心組件,承擔(dān)著系統(tǒng)解耦、異步處理、流量削峰等重要職責(zé)。RabbitMQ作為一款成熟的消息隊(duì)列中間件,以其高可用性、高可靠性和豐富的特性,成為眾多企業(yè)的首選方案。本文將從運(yùn)維工程師的角度,詳細(xì)闡述RabbitMQ從單機(jī)部署到集群搭建的完
    的頭像 發(fā)表于 07-08 15:55 ?172次閱讀

    順絡(luò)貼片電容的漏電流問(wèn)題如何解決?

    順絡(luò)貼片電容的漏電流問(wèn)題如何解決?要解決順絡(luò)貼片電容的漏電流問(wèn)題,可以從以下方面入手: 1、選型與材料優(yōu)化 選擇優(yōu)質(zhì)型號(hào):優(yōu)先選擇質(zhì)量可靠、穩(wěn)定性好的順絡(luò)貼片電容,如具有低漏電流特性的X7R或X5R
    的頭像 發(fā)表于 06-19 15:07 ?157次閱讀
    順絡(luò)貼片電容的漏電流問(wèn)題如<b class='flag-5'>何解</b>決?

    allegro軟件走線命令下參數(shù)不顯示如何解

    在PCB設(shè)計(jì)中,走線命令是頻繁使用的功能之一。執(zhí)行走線命令后,通常會(huì)在Options面板中顯示線寬、層、角度等設(shè)置選項(xiàng),用于調(diào)整走線參數(shù)。然而,有時(shí)執(zhí)行走線命令后,Options面板中可能沒(méi)有顯示這些設(shè)置區(qū)域,如圖1所示,該如何解決?
    的頭像 發(fā)表于 06-05 09:30 ?454次閱讀
    allegro軟件走線命令下參數(shù)不顯示如<b class='flag-5'>何解</b>決

    設(shè)備需求極致緊湊的空間體驗(yàn),我們?cè)撊?b class='flag-5'>何解決?

    在自動(dòng)化集成過(guò)程,往往會(huì)碰到設(shè)備對(duì)控制系統(tǒng)體積有極致要求的情況,面對(duì)這樣的挑戰(zhàn),如何解決?項(xiàng)目背景與需求分析在自動(dòng)化集成過(guò)程,往往會(huì)碰到設(shè)備對(duì)控制系統(tǒng)體積有極致要求的情況,面對(duì)這樣的挑戰(zhàn),如何解
    的頭像 發(fā)表于 05-19 11:43 ?113次閱讀
    設(shè)備需求極致緊湊的空間體驗(yàn),我們?cè)撊?b class='flag-5'>何解</b>決?

    rabbitmq高可用集群搭建

    在進(jìn)行RabbitMQ搭建時(shí),我們基于現(xiàn)有的連接數(shù)據(jù)和業(yè)務(wù)需求進(jìn)行了深入分析。目前的統(tǒng)計(jì)數(shù)據(jù)顯示,連接數(shù)為631,隊(duì)列數(shù)為80418。為了確保業(yè)務(wù)需求的順利滿足,我們需要在云產(chǎn)品和自建RabbitMQ消息隊(duì)列服務(wù)之間做出選擇。
    的頭像 發(fā)表于 03-12 14:29 ?483次閱讀
    <b class='flag-5'>rabbitmq</b>高可用集群搭建

    DLPNIRNANOEVM編譯信息報(bào)錯(cuò)如何解決?

    按照官方文檔使用ccs編譯DLPspecturnlibrary 2.0 3的dlpspeclib文件時(shí),按照官方指導(dǎo)書(shū)來(lái)進(jìn)行編譯為什么還有警告,請(qǐng)問(wèn)該如何解
    發(fā)表于 02-24 06:18

    何解決信號(hào)完整性問(wèn)題

    何解決信號(hào)完整性問(wèn)題呢?是德科技在向您介紹信號(hào)完整性分析基礎(chǔ)知識(shí)的同時(shí),我們還向您展示如何使用基本信號(hào)完整性(Signal Integrity - SI) 分析技術(shù)(例如眼圖、S參數(shù)、時(shí)域反射計(jì)(TDR) 和單脈沖響應(yīng))來(lái)解決信號(hào)完整性問(wèn)題。
    的頭像 發(fā)表于 12-25 16:51 ?1704次閱讀
    如<b class='flag-5'>何解</b>決信號(hào)完整性問(wèn)題

    磁極是如何解決磁集成產(chǎn)品電磁干擾的?

    磁集成后,有哪些新的電磁干擾源?該如何解決這些新的干擾源?磁極又是如何解決這些問(wèn)題的? 磁集成后,EMC比分立磁性元件更難通過(guò),到底是什么原因?qū)е碌??磁性元件企業(yè)又有哪些辦法可以解決?今天我們采訪
    的頭像 發(fā)表于 12-06 11:27 ?675次閱讀
    磁極是如<b class='flag-5'>何解</b>決磁集成產(chǎn)品電磁干擾的?

    SRS TruSurround HD不能正常使用,如何解決?

    SRS TruSurround HD不能正常使用如何解決?
    發(fā)表于 10-22 08:21

    OPA695自激如何解決?

    電路圖如下:信號(hào)源輸出電阻51Ω 電路直接自激(有輸入信號(hào)時(shí)),請(qǐng)問(wèn)該如何解決?
    發(fā)表于 09-20 06:00

    谷景分享如何解決工字電感噪音大的問(wèn)題

    谷景分享如何解決工字電感噪音大的問(wèn)題編輯:谷景電子工字電感是電子電路中非常常見(jiàn)的一種電子元器件,大家在使用工字電感的時(shí)候,有時(shí)候可能會(huì)遇到一些問(wèn)題,比如噪音異響的問(wèn)題。如果不及時(shí)解決的話,對(duì)于電路
    發(fā)表于 09-16 23:01 ?0次下載

    何解決熱插拔時(shí)的電壓過(guò)沖

    電子發(fā)燒友網(wǎng)站提供《如何解決熱插拔時(shí)的電壓過(guò)沖.pdf》資料免費(fèi)下載
    發(fā)表于 09-06 11:34 ?0次下載
    如<b class='flag-5'>何解</b>決熱插拔時(shí)的電壓過(guò)沖

    何解決工字電感噪音大的問(wèn)題

    電子發(fā)燒友網(wǎng)站提供《如何解決工字電感噪音大的問(wèn)題.docx》資料免費(fèi)下載
    發(fā)表于 09-04 11:46 ?0次下載

    何解決電感的漏感問(wèn)題

    電子發(fā)燒友網(wǎng)站提供《如何解決電感的漏感問(wèn)題.docx》資料免費(fèi)下載
    發(fā)表于 09-02 14:48 ?0次下載

    TLV3501輸出震蕩如何解決?

    在輸入大于210mV時(shí),輸出出現(xiàn)錯(cuò)誤,,,這是什么情況,該如何解決呢?Voverdrive是指我的輸入電壓?jiǎn)幔?
    發(fā)表于 07-30 06:51