日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【146期】面试官问:说一说 RabbitMQ 的几种工作模式和优化建议?

發布時間:2023/12/15 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【146期】面试官问:说一说 RabbitMQ 的几种工作模式和优化建议? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點擊上方“Java精選”,選擇“設為星標”

別問別人為什么,多問自己憑什么!

下方留言必回,有問必答!

每天?08:00?更新文章,每天進步一點點...

1.組件介紹

  • Broker:它提供一種傳輸服務,它的角色就是維護一條從生產者到消費者的路線,保證數據能按照指定的方式進行傳輸。

  • Exchange:消息交換機,它指定消息按什么規則,路由到哪個隊列。

  • Queue:消息的載體,每個消息都會被投到一個或多個隊列。

  • Binding:綁定,它的作用就是把exchange和queue按照路由規則綁定起來。

  • Routing Key:路由關鍵字,exchange根據這個關鍵字進行消息投遞。

  • vhost:虛擬主機,一個broker里可以有多個vhost,用作不同用戶的權限分離。

  • Producer:消息生產者,就是投遞消息的程序。

  • Consumer:消息消費者,就是接受消息的程序。

  • Channel:消息通道,在客戶端的每個連接里,可建立多個channel。

  • 2.消息發布和接收流程

    一.如何發送消息

  • 生產者和Broker建立TCP連接;

  • 生產者和Broker建立通道;

  • 生產者通過通道消息發送給Broker,由Exchange將消息進行轉發;

  • Exchange將消息轉發到止跌那個的Queue(隊列)。

  • 二.如何接收消息

  • 消費者和Broker建立TCP連接;

  • 消費者和Broker建立通道;

  • 消費者監聽制定的Queue(隊列);

  • 當有消息到達Queue時Broker默認將消息推送給消費者;

  • 消費者接受到消息。

  • 3.工作模式

    1. Direct 廣播模式

    是最簡單的模式.即創建消息隊列的時候,指定一個路由鍵(RoutingKey)。當發送者發送消息的時候,指定對應的Key。當Key和消息隊列的RoutingKey一致的時候,消息將會被發送到該消息隊列中。推薦:Java進階學習資料。

    2.Topic 主題交換區模式

    topic轉發信息主要是依據通配符,隊列和交換機的綁定主要是依據一種模式(通配符+字符串),而當發送消息的時候,只有指定的Key和該模式相匹配的時候,消息才會被發送到該消息隊列中.通配符:*?表示一個詞,#?表示零個或多個詞

    3.fanout是路由廣播的形式

    fanout是路由廣播的形式,將會把消息發給綁定它的全部隊列,即便設置了key,也會被忽略。因此我們發送到交換機的消息會使得綁定到該交換機的每一個Queue接收到消息,這個時候就算指定了路由鍵(routingKey),或者規則(即上文中convertAndSend方法的參數2),也會被忽略!

    4.RabbitMQ優化建議

    1、加大服務器帶寬

    訪問量大時,較長的數據容易將帶寬占滿。如服務器上傳帶寬為10M,則實際上傳帶寬可認為1M,每秒上傳量為1M/1K=1K。如果把帶寬加到100M,則每秒上傳量為10K。一般情況下,RabbitMq服務器能夠接受的每秒寫入量為20K-50K(8G內存),因此在帶寬在不足200M的時候,加大帶寬會產生很明顯的提升作用,再往上效果就可能不那么明顯了。推薦:Java進階學習資料。

    2、加大內存

    RabbitMq的機制是先將消息放在內存中,然后分批寫入硬盤。小批量數據的寫入基本上都放在內存中,內存數據量過大時會一邊把客戶端的數據往內存里寫,一邊將內存里的陳舊數據往硬盤里寫,這樣會對速度造成較嚴重的損耗。適度的增加內存,隊列將會更多的消息放在內存中,增加系統的處理速度。

    3、使用固態硬盤

    機械硬盤的寫入速度較慢,處理大量數據時機械硬盤對性能的損耗十分嚴重。如果要存放1億條數據,所需要的硬盤大小為100G,建議采用100-500G固態硬盤。再加上消費端在不斷的處理數據,一般待處理的消息能夠達到千萬級別已經相當不容易了

    4、增加生產者

    服務器可以建立多個連接,單個生產者往往不能充分利用服務器的潛能,建立多個生產者之后,服務器處理能力將會得到充分利用。一般情況下,一個生產者每秒可以傳入1000-5000條消息,在1-10這個范圍內,每增加一個生產者,處理速度就會相對單生產者增加一倍

    5、增加消費者

    消費者增多時,出隊速度有明顯改善。該方案對于出隊速度的影響有限,1-10個進程范圍內,相對于單進程只有一倍左右的提升,建議線程開2-5個即可,再多可能影響不大。出現該現象的原因可能是服務器帶寬或硬件處理能力有限,消費者增加了也沒什么用處。因為沒有實際環境測試,此條只列為建議,采用前可以多做實驗

    6、改網絡訪問為本地訪問

    該方案在消費端/生產端與RabbitMq服務器部署在同一臺電腦時有用,因為省略了網絡傳輸,大大節省了處理時間。如果消費端/生產端與RabbitMq服務器分開部署,該方案就不能使用了。在代碼中將IP地址127.0.0.1改為localhost即可。

    作者:精誠所至金石為開

    blog.csdn.net/smartsteps/article/details/107002567

    精品資料,超贊福利!

    >Java精選面試題<
    3000+ 道面試題在線刷,最新、最全 Java 面試題!

    期往精選??點擊標題可跳轉

    【138期】手擼 websocket + netty 實時視頻彈幕交互功能(Java版附源碼)

    【139期】面試官問:一般后端接口都測試什么?怎么測?

    【140期】阿里技術經理問:ReadWriteLock 讀寫之間互斥嗎?

    【141期】JDK8 Stream 操作 collectingAndThen:根據對象的屬性去重

    【142期】List 中 remove() 方法的“陷阱”,被坑慘了!

    【143期】面試官問:說一說 Spring 和 Spring Boot 核心的 3 大區別?

    【144期】拼多多面試官問:假設使用 Redis, 如何統計獨立用戶訪問量?

    【145期】面試官:Java 數組中 new Object[5] 語句是否創建了 5 個對象?

    文章有幫助的話,在看,轉發吧!

    總結

    以上是生活随笔為你收集整理的【146期】面试官问:说一说 RabbitMQ 的几种工作模式和优化建议?的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 精品国产乱码久久久久夜深人妻 | 在线视频中文 | 手机在线亚洲 | 麻豆视频在线观看免费网站 | 九色91视频| 黄色一级片. | 五月天婷婷激情视频 | 国产免费无码一区二区视频 | 香蕉视频国产 | 国产调教一区 | 一区二区自拍 | 亚洲欧美影院 | 日韩av在线免费看 | 邵氏电影《金莲外传2》免费观看 | 久久97| 一区二区免费播放 | 久久免费视频观看 | 国产福利91精品 | 在线不卡二区 | 国产a国产 | 日韩视频中文字幕在线观看 | 日韩精品视频免费 | 91久久一区 | 天天插天天爱 | free性中国hd国语露脸 | 欧美第一页浮力影院 | 91九色在线视频 | 极品毛片 | 日韩视频免费在线观看 | www.色网| 91色在线观看 | 91av俱乐部| 中文av资源 | 黄片毛片视频 | 久久精品91| 无码h肉动漫在线观看 | 性欧美ⅴideo另类hd | 亚洲网友自拍 | 黄色日皮视频 | 啪啪免费网| 国产欧美精品久久久 | 男生和女生差差的视频 | 日本成人精品 | 欧美劲爆第一页 | 成人免费毛片男人用品 | 中文字幕 自拍 | 看特级毛片 | 韩日中文字幕 | 亚洲av中文无码乱人伦在线观看 | 亚洲精品一区二区三区区别 | 在线观看欧美日韩 | 97人妻精品一区二区三区动漫 | 天天舔天天 | 人妻互换一区二区激情偷拍 | 欧美丰满熟妇bbbbbb百度 | 99热最新在线 | a网站在线 | 亚洲av成人一区二区国产精品 | 无码无套少妇毛多18pxxxx | 男女互操在线观看 | 国产一级不卡毛片 | 亚洲国产精品成人av | 天天综合干 | 亚洲国产日韩在线一区 | 在线看片成人 | 色戒电影未测减除版 | 毛片aaa| 国产91在线免费 | 插吧插吧综合网 | 亚洲美女综合 | 777久久久 | 四虎永久在线精品免费网址 | 中文字幕观看视频 | 少妇高潮网站 | 亚洲午夜精品 | 亚洲+小说+欧美+激情+另类 | 国产乱妇无码大片在线观看 | 这里只有精品在线播放 | 欧洲亚洲一区二区 | 最新av免费观看 | 特级毛片爽www免费版 | 激情综合小说 | 国产极品在线播放 | 国内精品免费视频 | 久久精品日| 三级免费黄录像 | 影音先锋蜜桃 | 插插看看 | 国产夫妻视频 | 成人激情小说网站 | 致命魔术电影高清在线观看 | 日韩中文字幕免费在线观看 | www.xxxxx日本| 欧美xxxx18国产| 日韩一区在线看 | 国产男女裸体做爰爽爽 | 欧美自拍区| 成人必看www. | 亚洲视频不卡 |