1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        .NET 云原生架構(gòu)師訓(xùn)練營(yíng)(模塊二 基礎(chǔ)鞏固 消息隊(duì)列 介紹與基礎(chǔ))--學(xué)習(xí)筆記

        共 1672字,需瀏覽 4分鐘

         ·

        2021-01-11 19:49

        2.6.1 消息隊(duì)列 -- 介紹

        • 主要使用場(chǎng)景

        • 隊(duì)列的三種形式

        • 消息隊(duì)列的優(yōu)點(diǎn)

        主要使用場(chǎng)景

        • 典型的異步處理

        • 流量削鋒

        • 應(yīng)用解耦

        隊(duì)列的三種形式

        • 點(diǎn)對(duì)點(diǎn)

        • 工作隊(duì)列

        • 發(fā)布與訂閱

        消息隊(duì)列的優(yōu)點(diǎn)

        1、屏蔽異構(gòu)平臺(tái)的細(xì)節(jié):發(fā)送方、接收方系統(tǒng)之間不需要了解雙方,只需認(rèn)識(shí)消息。

        2、異步:消息堆積能力;發(fā)送方接收方不需同時(shí)在線,發(fā)送方接收方不需同時(shí)擴(kuò)容(削峰)。

        3、解耦:防止引入過(guò)多的API給系統(tǒng)的穩(wěn)定性帶來(lái)風(fēng)險(xiǎn);調(diào)用方使用不當(dāng)會(huì)給被調(diào)用方系統(tǒng)造成壓力,被調(diào)用方處理不當(dāng)會(huì)降低調(diào)用方系統(tǒng)的響應(yīng)能力。

        4、復(fù)用:一次發(fā)送多次消費(fèi)。

        5、可靠:一次保證消息的傳遞。如果發(fā)送消息時(shí)接收者不可用,消息隊(duì)列會(huì)保留消息,直到成功地傳遞它。

        6、提供路由:發(fā)送者無(wú)需與接收者建立連接,雙方通過(guò)消息隊(duì)列保證消息能夠從發(fā)送者路由到接收者,甚至對(duì)于本來(lái)網(wǎng)絡(luò)不易互通的兩個(gè)服務(wù),也可以提供消息路由。

        2.6.2 RabbitMQ -- 基礎(chǔ)

        • 主要場(chǎng)景

        • AMQP

        主要場(chǎng)景

        軟件系統(tǒng)中使用消息隊(duì)列的主要場(chǎng)景:

        秒殺活動(dòng)、搶購(gòu)、消息通訊、郵件發(fā)送、電話短信等都是典型的采用消息中間件的業(yè)務(wù)場(chǎng)景。

        AMQP

        AMQP 0-9-1 Model Explained:https://www.rabbitmq.com/tutorials/amqp-concepts.html

        • 交換機(jī)

        • 隊(duì)列

        • 綁定

        • 信道(Channel)

        • 消息

        交換機(jī)

        交換機(jī)的四種類型

        • Direct 直連

        • Fanout 發(fā)布訂閱-廣播

        • Topic 發(fā)布訂閱-路由

        • Headers

        Direct 直連

        Fanout 發(fā)布訂閱-廣播

        Topic 發(fā)布訂閱-路由

        Topics:https://www.rabbitmq.com/tutorials/tutorial-five-python.html

        Headers

        特性中可以做路由的匹配

        隊(duì)列

        它們存儲(chǔ)由應(yīng)用程序使用的消息。

        隊(duì)列與交換共享一些屬性,但也具有一些其他屬性:

        • 名稱

        • 持久(隊(duì)列將在代理重新啟動(dòng)后幸存)

        • 獨(dú)占(僅由一個(gè)連接使用,并且該連接關(guān)閉時(shí)隊(duì)列將被刪除)

        • 自動(dòng)刪除(至少有一個(gè)使用方的隊(duì)列在最后一個(gè)使用方退訂時(shí)被刪除)

        • 參數(shù)(可選;由插件和特定于代理的功能使用,例如消息TTL,隊(duì)列長(zhǎng)度限制等)

        必須先聲明隊(duì)列,然后才能使用隊(duì)列。聲明隊(duì)列將導(dǎo)致它創(chuàng)建(如果尚不存在)。如果隊(duì)列已經(jīng)存在并且其屬性與聲明中的相同,則該聲明無(wú)效。

        如果有至少一個(gè)消費(fèi)者訂閱了隊(duì)列,當(dāng)消息到達(dá)隊(duì)列時(shí),消息會(huì)發(fā)送給訂閱者。如果一個(gè)訂閱者都沒(méi)有,消息會(huì)在隊(duì)列中等待,直到出現(xiàn)第一個(gè)訂閱者

        綁定

        綁定是交換使用(其中包括)將消息路由到隊(duì)列的規(guī)則。

        為了指示交換機(jī)E將消息路由到隊(duì)列Q,必須將Q綁定到E。綁定可能具有某些交換機(jī)類型使用的可選 路由鍵屬性。

        路由密鑰的目的是選擇發(fā)布到交換機(jī)的某些消息以路由到綁定隊(duì)列。換句話說(shuō),路由鍵就像一個(gè)過(guò)濾器。

        信道(Channel)

        AMQP 引進(jìn)的一個(gè)特殊的概念,建立在 tcp 之上的一個(gè)引用層協(xié)議

        一個(gè)客戶端與一個(gè)服務(wù)器建立一個(gè)連接,可以用于多個(gè)消費(fèi)者

        一個(gè) tcp 連接里面可以產(chǎn)生多個(gè)信道

        消息

        • 消息確認(rèn)

        • 拒絕消息

        • 預(yù)讀消息 prefetching

        • 消息格式

        消息確認(rèn)

        什么時(shí)候從隊(duì)列中移除

        • 默認(rèn)模式(不需要 ack,發(fā)送到消費(fèi)者之后即從隊(duì)列中移除)

        • ack 模式(需要消息者回復(fù))

        消息格式

        • Content type

        • Content encoding

        • Routing key

        • Delivery mode (persistent or not)

        • Message priority

        • Message publishing timestamp

        • Expiration period

        • Publisher application id

        課程鏈接

        .NET云原生架構(gòu)師訓(xùn)練營(yíng)講什么,怎么講,講多久


        歡迎各位讀者加入微信群一起學(xué)習(xí)交流,
        在公眾號(hào)后臺(tái)回復(fù)“加群”即可~~


        瀏覽 42
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            红桃视频一区二区三区免费观看 | 亚洲精品水蜜桃 | 色秘 乱码一区二区三区在线男奴 | 乌克兰xxxxx少妇精品二区 | 非洲一级片 | 视频一区二区三区四 | 国产原创AV在线播放 | 特黄一级富婆毛片 | 久久99国产精品久久99果冻传媒 | 大逼逼网 |