1. 程式人生 > 其它 >MQ的適用場景、選擇、術語和概念

MQ的適用場景、選擇、術語和概念

目錄

前言

MQ(Message Queue)訊息佇列


MQ的適用場景

  • 非同步處理
把一些耗時但不阻塞主流程的業務讓MQ去做業務處理,提升使用者體驗
  • 流量削峰填谷
秒殺場景,利用MQ控制流量,一旦超出閾值就丟棄請求或彈出錯誤頁,防止應用被洪峰打死
  • 解耦微服務
A服務呼叫B服務,B掛了,A的介面也無法正常返回,即使有Sentinel可以保護A不被B拖死,但介面依然無法正常返回,使用MQ後演變成A生產訊息到MQ,B去消費MQ,即使B掛了,MQ依然會把訊息儲存起來,對A不會產生任何影響,B服務恢復正常後再去消費MQ的訊息

MQ的選擇

  • 目前常用的主流的訊息中介軟體:ActiveMQRabbitMQKafkaRocketMQ
  • RocketMQ有一篇官方對比文件:RocketMQ vs. ActiveMQ vs. Kafka

MQ的術語和概念

術語/概念 子項 解釋 描述
Topic主題 - 訊息的集合 一類訊息的集合,RocketMQ的基本訂閱單位
訊息模型 Producer 生產者 生產訊息
Broker 訊息代理 儲存訊息,轉發訊息
Consumer 消費者 消費訊息
部署結構 Name Server 名字服務 生產者/消費者通過名字服務查找個主題相應的Broker IP列表
Borker Server 代理伺服器 訊息中轉角色,負責儲存訊息、轉發訊息
消費模式 Pull Consumer 拉取式消費 應用呼叫Consumer的拉取資訊方法從Broker Server拉取訊息
Push Consumer 推動式消費 Broker收到訊息後主動推送給消費者,實時性較高
Group組 Producer Group 生產者組 同一類Producer的集合
Consumer Group 消費者組 同一類Consumer的集合
訊息傳播模式 Clustering 叢集 相同Consumer Group的每個Consumer例項平均分攤訊息
Broadcasting 廣播 相同Consumer Group的每個Consumer例項都接收全量的訊息
訊息型別 普通訊息、
順序訊息、
定時/延時訊息、
事務訊息
- -

MQ的搭建導航

RocketMQ
Windows下安裝RocketMQ

RabbitMQ
Windows下安裝RabbitMQ
Linux下安裝RabbitMQ


- End -
白嫖有風險
點贊加收藏
以上為本篇文章的主要內容,希望大家多提意見,如果喜歡記得點個推薦哦 作者:Maggieq8324 出處:https://www.cnblogs.com/maggieq8324/ 本文版權歸作者和部落格園共有,歡迎轉載,轉載時保留原作者和文章地址即可。