<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      RabbitMQ - 基礎介紹 以及 常用的5種隊列

       RabbitMQ介紹

         RabbitMQ是使用Erlang編寫的一個開源的消息隊列,本身支持很多的協議:AMQP,XMPP, SMTP, STOMP,也正因如此,它非常重量級,更適合于企業級的開發。同時實現了Broker構架,這意味著消息在發送給客戶端時先在中心隊列排隊。對路由,負載均衡或者數據持久化都有很好的支持。

         它支持開放的高級消息隊列協議 (AMQP,Advanced Message Queuing Protocol),從根本上避免了生產廠商的封閉,使用任何語言的各種客戶都可以從中受益。這種協議提供了相當復雜的消息傳輸模式,所以基本上不需要MassTransit或NServiceBus的配合。它還具有“企業級”的適應性和穩定性。這些東西對我的客戶來說十分的有吸引力。

        RabbitMQ從信息接收者角度可以看做三種模式,一對一,一對多(此一對多并不是發布訂閱,而是每條信息只有一個接收者)發布訂閱。其中一對一是簡單隊列模式,一對多是Worker模式,而發布訂閱包括發布訂閱模式,路由模式和通配符模式,為什么說發布訂閱模式包含三種模式呢,其實發布訂閱,路由,通配符三種模式都是使用只是交換機(Exchange)類型不一致

       如何安裝RabbitMQ 以及 用戶和權限配置

       docker安裝RabbitMQ請參考:http://www.rzrgm.cn/gygtech/p/14860921.html

       架構模型

         想要學習后面的幾種消息具體的發送模式,這個模型圖就必須理解清楚,因為這幾種方式就是對這個模型不同程度的選擇和縮減

      • Producer:消息的生產者(發送消息的程序)。
      • Connection:應用程序與Broker之間的網絡連接。
      • Channel:信道,即信息傳輸的通道,可以建立多個 Channel,每個 Channel 代表一個會話任務。
        • 信道是建立在 TCP 連接內的虛擬連接,信息的讀寫都通過信道傳輸,因為對于操縱系統而言,建立和銷毀 TCP 是非常昂貴的,所以引入了信道的概念,以復用一條 TCP 連接。
      • Broker(Server) :標識消息隊列服務器實體,例如這里就是 RabbitMQ Server。
      • Virtual Host:虛擬主機,一個 Broker 中可以設置多個 Virtual Host,用作不同用戶的權限隔離。
        • Broker 可以理解為整個數據庫服務,而 Virtual Host 就是其中每個數據庫的感覺,不同項目可以對應不同的數據庫,其中有著項目所屬的業務表等等。
        • 每個 Virtual Host 中,可以有若干個 Exchange 和 Queue。
      • Exchange:交換機,用來接收生產者發送的消息,然后將這些消息根據路由鍵發送到隊列。
      • Binding:Exchange 和 Queue 之間的虛擬連接,Binding 中可以包括多個 Routing key。
      • Routing key:路由規則,虛擬機用它來確認如何路由一個特定消息。
      • Queue:消息隊列,它是消息的容器,用來保存消息,每一條消息都能傳入一個或者多個隊列中,等待消費者消費,即取出這個消息。
      • Consumer:消息的消費者(接收消息的程序)。
       RabbitMQ隊列形式

       RabbitMQ一共有五種常用的隊列:

      • 第一種:簡單隊列(一對一模式)耦合性高,生產消費一一對應。
      • 第二種:WorkQueues(工作隊列),一個生產,多個消費者共同處理消息。
      • 第三種:訂閱模式,1一個生產者多個消費者,每一個消費者有自己的一個隊列,生產者直接將消息發送給交換機,交換機將消息發送給隊列,每一個隊列都需要綁定到交換機。這種模式可以滿足消費者發布一個消息,多個消費者消費同一信息的需求,但C1、C2消費的都是相同的數據,有時我們需要C1和C2消費的信息只有部分差異,比如我們需求:C1消費增加的數據,C2消費編輯、增加和刪除的數據。
      • 第四種:路由模式,路由模式是在訂閱模式基礎上的完善,可以在生產消息的時候,加入Key值,與key值匹配的消費者消費信息。但路由模式中,就如三中提到的C1、C2、如果C2對應的類型更多,就需要寫很多key值。但其實它只與C1有一點差別

      • 第五種:通配符模式是在路由模式的升級,他允許key模糊匹配。*代表一個詞,#代表一個或多個詞。通過通配符模式我們就可以將C1對應的一個key準確定為item.add。而C2我們就不需要一一寫出key值,而是用item.#代替即可。

      posted @ 2021-06-19 10:20  gygtech  Views(2773)  Comments(0)    收藏  舉報
      主站蜘蛛池模板: 国产在线拍揄自揄拍无码| 国产mv在线天堂mv免费观看| 久久96热在精品国产高清| 狠狠干| 无码AV无码免费一区二区| 一日本道伊人久久综合影| 国产成人精品无码免费看| 丰满高跟丝袜老熟女久久| 亚洲av永久无码天堂影院| 国产亚洲精品日韩av在| 囊谦县| 在线观看中文字幕国产码| 中文字幕精品亚洲二区| 婷婷色爱区综合五月激情韩国| 亚洲av无码之国产精品网址蜜芽| 久久精品人人做人人爽97| 亚洲av二区三区在线| 女人与牲口性恔配视频免费| 久久国内精品一国内精品| 2020年最新国产精品正在播放 | 成人午夜av在线播放| 日韩高清国产中文字幕| 久久综合亚洲鲁鲁九月天| 久久人妻无码一区二区| 俄罗斯美女真人性做爰| 欧洲性开放老太大| 精品国产成人一区二区| 九九热精品在线免费视频| 无码任你躁久久久久久久| 一亚洲一区二区中文字幕| 爱性久久久久久久久| 人妻系列无码专区免费| 亚洲av无码成人精品区一区| 精品综合久久久久久97| 国产精品女在线观看| 蜜臀av一区二区精品字幕| 美女裸体视频永久免费| 国产亚洲av日韩精品熟女| 一区二区三区国产不卡| 亚洲日韩国产精品第一页一区 | 亚洲国产精品毛片在线看|