中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

個人直播網(wǎng)站開發(fā)自己怎么做網(wǎng)址開網(wǎng)站

個人直播網(wǎng)站開發(fā),自己怎么做網(wǎng)址開網(wǎng)站,網(wǎng)站美工建設(shè)意見,學做檔案類網(wǎng)站深入理解RabbitMQ交換機的原理與應用 引言1. RabbitMQ交換機簡介介紹1.1 什么是RabbitMQ?1.1.1 消息中間件的作用1.1.2 RabbitMQ的特點和優(yōu)勢 1.2 RabbitMQ的基本概念1.2.1 隊列1.2.2 交換機1.2.3 路由鍵 1.3 交換機的作用和分類1.3.1 直連交換機(direct…

在這里插入圖片描述

深入理解RabbitMQ交換機的原理與應用

  • 引言
  • 1. RabbitMQ交換機簡介介紹
    • 1.1 什么是RabbitMQ?
      • 1.1.1 消息中間件的作用
      • 1.1.2 RabbitMQ的特點和優(yōu)勢
    • 1.2 RabbitMQ的基本概念
      • 1.2.1 隊列
      • 1.2.2 交換機
      • 1.2.3 路由鍵
    • 1.3 交換機的作用和分類
      • 1.3.1 直連交換機(direct exchange)
      • 1.3.2 扇出交換機(fanout exchange)
      • 1.3.3 主題交換機(topic exchange)
      • 1.3.4 頭交換機(headers exchange)
      • 1.3.5 死信交換機
  • 2. RabbitMQ交換機應用
    • 2.1直連交換機實踐
    • 2.2 主題交換機實踐
    • 2.3 扇形交換機實踐
  • 總結(jié)

引言

在當今的分布式系統(tǒng)和微服務架構(gòu)中,消息中間件扮演著至關(guān)重要的角色。RabbitMQ作為一個功能強大的消息中間件,其交換機是其中核心的組件之一。本文將深入探討RabbitMQ交換機的原理和應用,幫助讀者更好地理解和應用消息隊列技術(shù)。

1. RabbitMQ交換機簡介介紹

1.1 什么是RabbitMQ?

RabbitMQ是一個開源的消息代理軟件,它遵循AMQP(高級消息隊列協(xié)議)標準,用于在分布式系統(tǒng)中存儲和轉(zhuǎn)發(fā)消息。作為消息中間件,RabbitMQ扮演著消息傳遞和消息隊列的角色,允許應用程序之間進行異步通信。

1.1.1 消息中間件的作用

消息中間件的作用在于解耦消息的發(fā)送者和接收者,實現(xiàn)異步通信,提高系統(tǒng)的可伸縮性和彈性。它可以協(xié)調(diào)不同服務之間的通信,確保消息的可靠傳遞,并提供消息的持久化、路由和傳輸?shù)裙δ堋?/p>

1.1.2 RabbitMQ的特點和優(yōu)勢

RabbitMQ具有高可靠性、靈活的路由、消息持久化、集群和分布式部署支持等特點。它的優(yōu)勢在于支持多種消息傳遞模式,如點對點、發(fā)布/訂閱和路由等,同時提供了豐富的插件和管理工具。

1.2 RabbitMQ的基本概念

1.2.1 隊列

隊列是消息的容器,用于存儲消息直到消費者準備接收它們。消息可以被一個或多個消費者訂閱。

1.2.2 交換機

交換機是消息的分發(fā)中心,它接收來自生產(chǎn)者的消息,并將它們路由到一個或多個隊列。

1.2.3 路由鍵

路由鍵是生產(chǎn)者在將消息發(fā)送到交換機時附加的關(guān)鍵字,交換機根據(jù)路由鍵將消息路由到一個或多個隊列。

1.3 交換機的作用和分類

在這里插入圖片描述

交換機負責接收來自生產(chǎn)者的消息,并將它們路由到一個或多個隊列。RabbitMQ提供了不同類型的交換機,包括直連交換機、扇出交換機、主題交換機和頭交換機。

1.3.1 直連交換機(direct exchange)

在這里插入圖片描述

直連交換機根據(jù)消息的路由鍵將消息路由到特定的隊列。它是最簡單的交換機類型,路由鍵與隊列綁定的路由鍵完全匹配時,消息才會被路由到相應的隊列。

1.3.2 扇出交換機(fanout exchange)

扇出交換機會將消息路由到與之綁定的所有隊列,忽略消息的路由鍵。這種模式適合廣播消息給多個消費者的場景。

1.3.3 主題交換機(topic exchange)

主題交換機根據(jù)消息的路由鍵和通配符將消息路由到一個或多個隊列。它提供了更靈活的路由規(guī)則,可以根據(jù)路由鍵的模式進行匹配。
在這里插入圖片描述

1.3.4 頭交換機(headers exchange)

頭交換機使用消息的屬性(headers)來進行匹配,而不是路由鍵。這種交換機類型提供了更復雜的匹配規(guī)則,可以根據(jù)消息的屬性進行匹配和路由。

1.3.5 死信交換機

在這里插入圖片描述
在這里插入圖片描述

2. RabbitMQ交換機應用

2.1直連交換機實踐

創(chuàng)建好隊列與交換機,并且綁定

 @Beanpublic Queue queue1(){return new Queue("queue1");}@Beanpublic Queue queue2(){return new Queue("queue2");}@Beanpublic DirectExchange drectexchange(){return new DirectExchange("drectexchange");}@Beanpublic Binding bingding1(){return BindingBuilder.bind(queue1()).to(drectexchange()).with("a");}@Beanpublic Binding bingding2(){return BindingBuilder.bind(queue2()).to(drectexchange()).with("b");}

生產(chǎn)者方法

 @RequestMapping("/send3")public String send3(){//向消息隊列發(fā)送消息amqpTemplate.convertAndSend("drectexchange","a","hello");return "哈哈;";}

消費者監(jiān)聽

package com.example.consumer;import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitHandler;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;@Component
@SuppressWarnings("all")
@Slf4j
@RabbitListener(queues = "queue1")
public class ReceiverQ1 {
@RabbitHandler
public void process(String msg) {
log.warn("Q1接收到:" + msg);
}
}
package com.example.consumer;import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitHandler;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;@Component
@SuppressWarnings("all")
@Slf4j
@RabbitListener(queues = "queue2")
public class ReceiverQ2 {
@RabbitHandler
public void process(String msg) {
log.warn("Q2接收到:" + msg);
}
}

運行一遍send3方法
在這里插入圖片描述

2.2 主題交換機實踐

前提準備,打開RabbitMQ服務,參考 構(gòu)建高可用消息隊列系統(tǒng) 01

進入實戰(zhàn)

創(chuàng)建好隊列與交換機,并且綁定

  @Beanpublic TopicExchange topicExchange(){return new TopicExchange("topicExchange");}@Beanpublic Binding bingding3(){return BindingBuilder.bind(queue1()).to(topicExchange()).with("*.*.a");}@Beanpublic Binding bingding4(){return BindingBuilder.bind(queue2()).to(topicExchange()).with("*.*.b");}@Beanpublic Binding bingding5(){return BindingBuilder.bind(queue1()).to(topicExchange()).with("mq.#");}@Beanpublic Binding bingding6(){return BindingBuilder.bind(queue2()).to(topicExchange()).with("mq.#");}

生產(chǎn)者方法

@RequestMapping("/send4")public String send4(String rex){//向消息隊列發(fā)送消息amqpTemplate.convertAndSend("topicExchange",rex,"hello");return "哈哈;";}

消費者監(jiān)聽在直連交換機上有
測試1
在這里插入圖片描述
在這里插入圖片描述
測試2
在這里插入圖片描述
在這里插入圖片描述
測試3
mq打頭
在這里插入圖片描述
在這里插入圖片描述

2.3 扇形交換機實踐

創(chuàng)建好隊列與交換機,并且綁定

  @Beanpublic FanoutExchange fanoutExchange(){return new FanoutExchange("fanoutExchange");}@Beanpublic Binding bingding7(){return BindingBuilder.bind(queue1()).to(fanoutExchange());}@Beanpublic Binding bingding8(){return BindingBuilder.bind(queue2()).to(fanoutExchange());}

生產(chǎn)者方法
生產(chǎn)者調(diào)用convertAndSend時第二個參數(shù)必須要有,可以給null值,否則報錯

 @RequestMapping("/send5")public String send5(){//向消息隊列發(fā)送消息amqpTemplate.convertAndSend("fanoutExchange","","hello");return "哈哈;";}

消費者監(jiān)聽在直連交換機上有
測試
在這里插入圖片描述

在這里插入圖片描述

總結(jié)

RabbitMQ交換機作為消息中間件的核心組件,其靈活的路由規(guī)則和豐富的特性為分布式系統(tǒng)和微服務架構(gòu)提供了強大的消息通信支持。通過深理解RabbitMQ交換機的原理和應用,可以更好地設(shè)計和構(gòu)建可靠的消息傳遞系統(tǒng),為復雜的應用場景提供穩(wěn)定高效的消息通信機制。

http://www.risenshineclean.com/news/55213.html

相關(guān)文章:

  • 淘寶 網(wǎng)站開發(fā) 退貨seo建站
  • 網(wǎng)絡工程就業(yè)方向及就業(yè)前景百度推廣賬戶優(yōu)化
  • 網(wǎng)站建設(shè)的主要功能谷歌在線瀏覽入口
  • 云服務器ecs建網(wǎng)站it培訓機構(gòu)哪家好
  • 網(wǎng)站建設(shè)情況簡介seo全網(wǎng)營銷公司
  • 建德網(wǎng)站seo溫州seo結(jié)算
  • 做網(wǎng)站須要什么技術(shù)曹操seo博客
  • 畢業(yè)設(shè)計做網(wǎng)站有什么好的創(chuàng)意百度瀏覽器下載安裝2023版本
  • 怎樣去建設(shè)廳網(wǎng)站核實身份南京網(wǎng)絡優(yōu)化培訓
  • 做一款推薦類的網(wǎng)站網(wǎng)站seo視頻
  • 領(lǐng)動做的網(wǎng)站怎么樣西安網(wǎng)站開發(fā)制作公司
  • 網(wǎng)頁制作題庫哈爾濱網(wǎng)站優(yōu)化流程
  • 做b2b網(wǎng)站如何盈利模式新聞今天最新消息
  • 微信網(wǎng)站設(shè)計價格網(wǎng)站流量分析的指標有哪些
  • 比特幣做空網(wǎng)站廣州seo網(wǎng)絡推廣員
  • 日本男女做受網(wǎng)站怎么建造自己的網(wǎng)站
  • 公司做網(wǎng)站 優(yōu)幫云新軟件推廣
  • 網(wǎng)站頁面設(shè)計欣賞模板競價托管資訊
  • 做網(wǎng)站 服務器多少錢一年網(wǎng)絡營銷課程設(shè)計
  • 國內(nèi)做外貿(mào)如何訪問外國網(wǎng)站站長之家權(quán)重
  • 網(wǎng)絡網(wǎng)站制作技巧工業(yè)設(shè)計公司
  • 西部數(shù)碼備案域名購買seo培訓教程視頻
  • 買賣域名掙幾十萬標題優(yōu)化seo
  • 廣東網(wǎng)站設(shè)計費用網(wǎng)絡推廣的渠道有哪些
  • 建網(wǎng)站一般最低多少錢什么是網(wǎng)絡推廣營銷
  • 濰坊做網(wǎng)站哪家公司最好搜索引擎營銷包括
  • 用什么工具做網(wǎng)站視圖營銷策略ppt模板
  • php asp網(wǎng)站開發(fā)站長之家seo一點詢
  • 免費建立網(wǎng)站空間資源搜索神器
  • 蘇州h5模板建站seo網(wǎng)站優(yōu)化快速排名軟件