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

【面試需了解之消息隊(duì)列】RocketMQ、kafka、RabbitMQ概述

這篇具有很好參考價(jià)值的文章主要介紹了【面試需了解之消息隊(duì)列】RocketMQ、kafka、RabbitMQ概述。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言

消息隊(duì)列說明:RocketMQ、kafka、RabbitMQ概述及關(guān)鍵概念

消息隊(duì)列-Message Queue

概述

消息隊(duì)列中間件是分布式系統(tǒng)中重要的組件,主要解決應(yīng)用耦合,異步消息,流量控制等問題。實(shí)現(xiàn)高性能、高可用、可伸縮和最終一致性架構(gòu),是大型分布式系統(tǒng)不可缺少的中間件

作用

  • 異構(gòu)系統(tǒng)消息傳遞:上游系統(tǒng)C#>消息隊(duì)列>下游系統(tǒng)Java
  • 基于“訂閱發(fā)布”的一對多的數(shù)據(jù)分發(fā):中國氣象局==>消息隊(duì)列==>網(wǎng)易、微博、微信
  • 削峰、限流、日志處理、流程跟蹤:OA提供==>消息隊(duì)列(限流)>公文系統(tǒng)>郵件服務(wù)商

幾種消息隊(duì)列中間件對比

  • ActiveMQ:出現(xiàn)最早,支持的功能多而不精
  • Kafka:吞吐量大==>大數(shù)據(jù)
  • RocketMQ:單個(gè)消息處理及時(shí)性高,響應(yīng)快==>業(yè)務(wù)系統(tǒng)
  • RabbitMQ:延遲最低、基于erlang開發(fā),并發(fā)能力極強(qiáng)

RocketMQ

概述

阿里開源的消息中間件產(chǎn)品,純Java開發(fā),具有高吞吐量、高可用性、適合大規(guī)模分布式系統(tǒng)應(yīng)用的特點(diǎn),性能強(qiáng)勁(零拷貝技術(shù)),支持海量堆積,在阿里內(nèi)部進(jìn)行大規(guī)模使用,適合在互聯(lián)網(wǎng)與高并發(fā)系統(tǒng)中應(yīng)用

關(guān)鍵概念

主題:Topic
  • RocketMQ的頂層存儲(chǔ),所有消息資源的定義都在主題內(nèi)部完成,但主題是一個(gè)邏輯概念,并不是實(shí)際的消息容器
  • 主題內(nèi)部由多個(gè)隊(duì)列組成,消息的存儲(chǔ)和水平擴(kuò)展能力最終是由隊(duì)列實(shí)現(xiàn)的,并且針對主題的所有約束和屬性設(shè)置,最終也是通過主題內(nèi)部的隊(duì)列實(shí)現(xiàn)
消息隊(duì)列:MessageQueue
  • 隊(duì)列是消息存儲(chǔ)和傳輸?shù)娜萜鳎窍⒌淖钚〈鎯?chǔ)單元
  • 所有主題都是由多個(gè)隊(duì)列組成,以此實(shí)現(xiàn)隊(duì)列數(shù)量的水平拆分和隊(duì)列內(nèi)部的流式存儲(chǔ)
消息:Message
  • 最小數(shù)據(jù)傳輸單元
  • 生產(chǎn)者將業(yè)務(wù)數(shù)據(jù)的負(fù)載和拓展屬性包裝成消息發(fā)送到服務(wù)端
  • 服務(wù)端按照相關(guān)語義將消息投遞到消費(fèi)端進(jìn)行消費(fèi)
生產(chǎn)者:Producer
  • 用來構(gòu)建并傳輸消息到服務(wù)端的運(yùn)行實(shí)體
  • 被集成在業(yè)務(wù)系統(tǒng)中,將業(yè)務(wù)消息按照要求封裝成消息并發(fā)送到RocketMQ服務(wù)端
  • 生產(chǎn)者和主題的關(guān)系為多對多
消費(fèi)者:Consumer
  • 用來接收并處理消息的運(yùn)行實(shí)體
  • 被集成在業(yè)務(wù)系統(tǒng)中,從RocketMQ服務(wù)端獲取消息,并將消息轉(zhuǎn)化為業(yè)務(wù)可理解的信息,供業(yè)務(wù)邏輯處理
消費(fèi)者分組:Consumer Group
  • RocketMQ系統(tǒng)中承載多個(gè)消費(fèi)行為的消費(fèi)者的負(fù)載均衡分組
  • 在RocketMQ中,通過消費(fèi)者分組內(nèi)初始化多個(gè)消費(fèi)者實(shí)現(xiàn)消費(fèi)性能的水平擴(kuò)展以及高可用容災(zāi)

kafka

概述

  • 分布式、分區(qū)、多副本、多訂閱者,基于zookeeper協(xié)調(diào)的消息隊(duì)列系統(tǒng)

消息隊(duì)列模式

  1. 點(diǎn)對點(diǎn)
    • 生產(chǎn)者發(fā)送一條消息到queue,只有一個(gè)消費(fèi)者能收到
    • 一條消息只能被一個(gè)消費(fèi)一次,消費(fèi)者消費(fèi)了某條數(shù)據(jù)后,該數(shù)據(jù)從消息隊(duì)列中刪除
  2. 發(fā)布-訂閱模式
    • 生產(chǎn)者生產(chǎn)數(shù)據(jù)到一個(gè)topic中,消費(fèi)者可以訂閱一個(gè)或多個(gè)topic,消費(fèi)者可以消費(fèi)該topic中的所有數(shù)據(jù)。同一條數(shù)據(jù)可以被多個(gè)消費(fèi)者消費(fèi),數(shù)據(jù)被消費(fèi)后不會(huì)立馬刪除
    • 發(fā)布者發(fā)送到topic的消息,只有訂閱了topic的訂閱者才會(huì)收到消息

關(guān)鍵概念

節(jié)點(diǎn)-broker

Kafka集群包含一個(gè)或多個(gè)服務(wù)器,服務(wù)器節(jié)點(diǎn)稱為broker

主題-Topic

每條發(fā)布到Kafka集群的消息都有一個(gè)類別,這個(gè)類別稱為Topic。類似于數(shù)據(jù)庫的表名

分片-partition

topic中的數(shù)據(jù)分割為一個(gè)或多個(gè)partition,每個(gè)topic至少有一個(gè)partition

生產(chǎn)者-Producer

生產(chǎn)者即數(shù)據(jù)的發(fā)布者,該角色將消息發(fā)布到Kafka的topic中,broker接收到生產(chǎn)者發(fā)送的消息后,broker將該消息追加到當(dāng)前用于追加數(shù)據(jù)的segment

RabbitMQ

概述

高級消息隊(duì)列協(xié)議:Advanced Message Queuing Protocol

開源的消息代理和隊(duì)列服務(wù)器,用來通過普通協(xié)議在完全不同的應(yīng)用之間共享數(shù)據(jù);用Erlang語言編寫,基于AMQP協(xié)議

與SpringAMQP完美的整合,API豐富

集群模式豐富,表達(dá)式配置,HA模式,鏡像隊(duì)列模型文章來源地址http://www.zghlxwxcb.cn/news/detail-497678.html

關(guān)鍵概念

服務(wù)應(yīng)用:Server
  • 又稱Broker,接受客戶端的連接,實(shí)現(xiàn)AMQP實(shí)體服務(wù)
連接:Connection
  • 應(yīng)用程序與Broker的網(wǎng)絡(luò)連接
網(wǎng)絡(luò)信道:Channel
  • 幾乎所有的操作都在Channel中進(jìn)行,Channel是進(jìn)行消息讀寫的通道??蛻舳丝山⒍鄠€(gè)Channel,每個(gè)Channel代表一個(gè)會(huì)話任務(wù)
消息:Message
  • 服務(wù)器和應(yīng)用程序之間傳送的數(shù)據(jù),由Properties和Body組成。Properties可以對消息進(jìn)行修飾,比如消息的優(yōu)先級、延遲等高級特性;Body就是消息體內(nèi)容
虛擬地址:Virtual host
  • 用于進(jìn)行邏輯隔離,最上層的消息路由。一個(gè)Virtual host里面可以有若干個(gè)Exchange和Queue,同一個(gè)Virtual Host里面不能有相同名稱的Exchange或Queue
交換機(jī):Exchange
  • 接收消息,根據(jù)路由鍵轉(zhuǎn)發(fā)消息到綁定的隊(duì)列
綁定:Binding
  • Exchange和Queue之間的虛擬連接,binding中可以包含routing key
路由規(guī)則:Routing key
  • 一個(gè)路由規(guī)則,虛擬機(jī)可用它來確定如何路由一個(gè)特定消息

到了這里,關(guān)于【面試需了解之消息隊(duì)列】RocketMQ、kafka、RabbitMQ概述的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • RabbitMQ與RocketMQ:消息隊(duì)列的兩大強(qiáng)者對比

    在現(xiàn)代分布式系統(tǒng)中,消息隊(duì)列已成為不可或缺的一部分,它們幫助我們在不同的服務(wù)之間實(shí)現(xiàn)異步通信、解耦和流量削峰。在眾多消息隊(duì)列中間件中,RabbitMQ和RocketMQ是兩個(gè)備受矚目的選項(xiàng)。本文將對它們進(jìn)行深入對比,幫助大家根據(jù)實(shí)際需求選擇合適的消息隊(duì)列中間件。

    2024年04月28日
    瀏覽(21)
  • mq 消息隊(duì)列 mqtt emqx ActiveMQ RabbitMQ RocketMQ

    十幾年前,淘寶的notify,借鑒ActiveMQ。京東的ActiveMQ集群幾百臺(tái),后面改成JMQ。 Linkedin的kafka,因?yàn)槭莝cala,國內(nèi)很多人不熟。淘寶的人把kafka用java寫了一遍,取名metaq,后來再改名RocketMQ。 總的來說,三大原因,語言、潮流、生態(tài)。 MQ這種東西,當(dāng)你的消息量不大的時(shí)候,用啥

    2024年02月12日
    瀏覽(17)
  • 了解ActiveMQ、RabbitMQ、RocketMQ和Kafka的特點(diǎn)

    ActiveMQ是一種基于JMS(Java消息服務(wù))規(guī)范的消息中間件,由Apache基金會(huì)開發(fā)和維護(hù) 核心組件和特點(diǎn): Broker(代理):ActiveMQ的核心組件是Broker,它負(fù)責(zé)接收、存儲(chǔ)和路由消息,可以配置為單個(gè)實(shí)例或者集群,提供高可用性和可擴(kuò)展性。 Producer(生產(chǎn)者)和Consumer(消費(fèi)者):

    2024年02月07日
    瀏覽(51)
  • Kafka、RocketMQ、RabbitMQ如何保證消息的順序消費(fèi)?

    一、1個(gè)Topic(主題)只創(chuàng)建1個(gè)Partition (分區(qū)),這樣生產(chǎn)者的所有數(shù)據(jù)都發(fā)送到了一個(gè)Partition (分區(qū)),保證了消息的消費(fèi)順序; 二、生產(chǎn)者在發(fā)送消息的時(shí)候指定要發(fā)送到哪個(gè) Partition,這樣同一個(gè) Partition 的數(shù)據(jù)會(huì)被同一個(gè)消費(fèi)者消費(fèi),從而保證了消息的消費(fèi)順序。 實(shí)現(xiàn)思路

    2024年02月09日
    瀏覽(24)
  • ActiveMQ、RabbitMQ、Kafka、RocketMQ消息中間件技術(shù)選型

    消息中間件是分布式系統(tǒng)中重要的組件之一,用于實(shí)現(xiàn)異步通信、解耦系統(tǒng)、提高系統(tǒng)可靠性和擴(kuò)展性。在做消息中間件技術(shù)選型時(shí),需要考慮多個(gè)因素,包括可靠性、性能、可擴(kuò)展性、功能豐富性、社區(qū)支持和成本等。本文將五種流行的消息中間件技術(shù):ActiveMQ、RabbitMQ、

    2024年02月11日
    瀏覽(22)
  • 【消息中間件】詳解三大MQ:RabbitMQ、RocketMQ、Kafka

    【消息中間件】詳解三大MQ:RabbitMQ、RocketMQ、Kafka

    作者簡介 前言 博主之前寫過一個(gè)完整的MQ系列,包含RabbitMQ、RocketMQ、Kafka,從安裝使用到底層機(jī)制、原理。專欄地址: https://blog.csdn.net/joker_zjn/category_12142400.html?spm=1001.2014.3001.5482 本文是該系列的清單綜述,會(huì)拉通來聊一下三大MQ的特點(diǎn)和各種適合的場景。 目錄 1.概述 1.1.M

    2024年02月09日
    瀏覽(53)
  • SpringBoot整合消息中間件(ActiveMQ,RabbitMQ,RocketMQ,Kafka)

    SpringBoot整合消息中間件(ActiveMQ,RabbitMQ,RocketMQ,Kafka)

    消息的發(fā)送方:生產(chǎn)者 消息的接收方:消費(fèi)者 同步消息:發(fā)送方發(fā)送消息到接收方,接收方有所回應(yīng)后才能夠進(jìn)行下一次的消息發(fā)送 異步消息:不需要接收方回應(yīng)就可以進(jìn)行下一步的發(fā)送 什么是消息隊(duì)列? 當(dāng)此時(shí)有很多個(gè)用戶同時(shí)訪問服務(wù)器,需要服務(wù)器進(jìn)行操作,但此

    2024年04月27日
    瀏覽(52)
  • kafka消息丟失面試題,RocketMQ消息丟失場景及解決辦法

    kafka消息丟失面試題,RocketMQ消息丟失場景及解決辦法

    互聯(lián)網(wǎng)行業(yè)更新?lián)Q代非???,行業(yè)常態(tài)便是不斷學(xué)習(xí),因此這些主流技術(shù)你一個(gè)都不能落下! ①并發(fā)編程 Java并發(fā)編程是整個(gè)Java開發(fā)體系中最難以理解,但也是最重要的知識(shí)點(diǎn)之一,因此學(xué)習(xí)起來比較費(fèi)勁,從而導(dǎo)致很多人望而卻步,但是無論是職場面試還是高并發(fā)高流量的

    2024年03月17日
    瀏覽(25)
  • 消息中間件(MQ)對比:RabbitMQ、Kafka、ActiveMQ 和 RocketMQ

    前言 在構(gòu)建分布式系統(tǒng)時(shí),選擇適合的消息中間件是至關(guān)重要的決策。RabbitMQ、Kafka、ActiveMQ 和 RocketMQ 是當(dāng)前流行的消息中間件之一,它們各自具有獨(dú)特的特點(diǎn)和適用場景。本文將對這四種消息中間件進(jìn)行綜合比較,幫助您在項(xiàng)目中作出明智的選擇。 1. RabbitMQ 特點(diǎn): 消息模

    2024年02月20日
    瀏覽(34)
  • 【深入淺出RocketMQ原理及實(shí)戰(zhàn)】「消息隊(duì)列架構(gòu)分析」幫你梳理RocketMQ或Kafka的選擇理由以及二者PK

    【深入淺出RocketMQ原理及實(shí)戰(zhàn)】「消息隊(duì)列架構(gòu)分析」幫你梳理RocketMQ或Kafka的選擇理由以及二者PK

    前提背景 大家都知道,市面上有許多開源的MQ,例如,RocketMQ、Kafka、RabbitMQ等等,現(xiàn)在Pulsar也開始發(fā)光,今天我們談?wù)劰P者最常用的RocketMQ和Kafka,想必大家早就知道二者之間的特點(diǎn)以及區(qū)別,但是在實(shí)際場景中,二者的選取有可能會(huì)范迷惑,那么今天筆者就帶領(lǐng)大家分析一下

    2024年02月19日
    瀏覽(26)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包