日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

目錄
  • 概述
    • AMQP協議
    • AMQP協議重要角色
  • Docker安裝RabbitMQ

    概述

    不管是微服務還是分布式的系統架構中,消息隊列中間件都是不可缺少的一個重要環節,主流的消息隊列中間件有RabbitMQ、RocketMQ等等,從這篇開始詳細介紹以RabbitMQ為代表的消息隊列中間件。

    AMQP協議

    Docker安裝RabbitMQ AMQP協議及重要角色

    • AMQP協議是一個提供統一消息服務的應用層標準協議,基于此協議的客戶端與消息中間件可傳遞消息,并不受客戶端/中間件不同產品,不同開發語言等條件的限制。
    • AMQP協議是一種二進制協議,提供客戶端應用與消息中間件之間的異步、安全、高效的交互。
    • AMQP作為中間層服務,把消息生產和消費分隔開來,當消費者產生出現異常,不影響消費者對消息的消費,當消費者異常時,生產者生產的消息可以存放到服務的內存或者磁盤,不會影響想消費的速率,同時,消息也可以基于路由的規則可以投遞到指定的消費者消費。

    AMQP協議重要角色

    1.生產者和消費者

    • 生產者是生產消息的主體,消費者是消費消息的主體
    • 數據集成與系統解耦、異步處理與事件驅動、流量薛峰、事務消息與分布式事務的最終一致
    • 生產者生產一條消息丟給消息代理,消息代理根據投遞規則將消息傳到消費者手上

    2.交換機

    • 交換機就像是消息代理的路由器,負責拿到一個消息之后,根據確定的規則(路由鍵)將它路由給一個或零個隊列,交換機具備多種路由模式。
    • 基于消息生產者和路由規則可以將消息投遞到指定的Message Queue,交換機收到生產者投遞的消息,基于路由規則及隊列綁定關系匹配到投遞對應的交換機或者隊列進行分發,交換機不存儲消息,只做轉發

    交換機類型:

    • 直連交換機:根據路由鍵完全匹配的投遞到對應的隊列
    • 扇形交換機:無視路由鍵,將消息進行拷貝,并路由到給綁定到它身上所有隊列,提供了一個廣播的效果。
    • 主題交換機:根據路由鍵按模式匹配的投遞到對應的隊列
    • 交換機也具備自己的屬性,可以定義自己的名字,是否持久化等選項。

    3.隊列

    • 隊列是消息的暫存地,至少有一個消費者訂閱了隊列的話,消息會立即發送給這些訂閱的消費者,但是如果消息到達了無人的訂閱隊列,消息會在隊列中等待,等待有了消費者便進行分發。
    • Exchange和Message Queue之間存在綁定關系,消息到了Exchange 后基于路由策略可以將消息投遞到已綁定且符合路由策略的Message Queue。
    • 消息隊列會將消息存儲到內存或者是磁盤中,并將這些消息按照一定順序轉發給一個或多個消費者,每個消息隊列都是獨立隔離的,相互不影響。
    • 消息隊列具有不同的屬性(私有、共享、持久化、臨時、客戶端定義或者服務端定義等)),可以基于實際需求選擇對應的類型

    4.消息

    • 消息是信息的載體,也是AMQP協議的一個實體,消息包含兩部分
    • 載荷:就是真正的信息,是你想要傳輸的任何內容,該部分內容對消息代理來說是透明的
    • 元信息:包含路由鍵、內容類型、編碼、是否持久化等消息屬性,會被消息代理所解析,消息代理根據消息的屬性對這條消息進行投遞,存儲等,這部分被消息代理所關系,而消費者對其是不關心的。

    5.信道

    • 網絡信道,是建立在Connection鏈接之上的一種輕量級的鏈接,幾乎所有的操作都在Channel中進行,Channel是進行消息讀寫的通道,客戶端可以建立對各Channel,每個Channel代表一個會話任務。
    • 一個Connection上可以創建任意數量的Channel

    Docker安裝RabbitMQ

    1.查看Docker倉庫里的RabbitMQ鏡像

    # 查詢鏡像
    docker search rabbitmq
    # 下載鏡像
    docker pull rabbitmq
    

    2.啟動MQ安裝management

    如果在云服務上部署需在安全組開通一下端口:15672(UI頁面通信口)、5672(client端通信口)、25672(server間內部通信口)、61613(stomp 消息傳輸)、1883(MQTT消息隊列遙測傳輸)。

    docker run -d --name rabbit -e \
    RABBITMQ_DEFAULT_USER=stark -e RABBITMQ_DEFAULT_PASS=1990@stark 
    -p 15672:15672 \
    -p 5672:5672 \
    -p 25672:25672 \
    -p 61613:61613 \
    -p 1883:1883 rabbitmq:management
    

    使用 http://127.0.0.1:15672訪問,賬號和密碼就是參數RABBITMQ_DEFAULT_USERRABBITMQ_DEFAULT_PASS設置的值。

    Docker安裝RabbitMQ AMQP協議及重要角色

    以上就是 Docker安裝RabbitMQ、AMQP協議、和主要角色的詳細內容,更多關于 Docker安裝RabbitMQ的資料請關注其它相關文章!

    分享到:
    標簽:Docker 協議 安裝 服務器 角色
    用戶無頭像

    網友整理

    注冊時間:

    網站:5 個   小程序:0 個  文章:12 篇

    • 51998

      網站

    • 12

      小程序

    • 1030137

      文章

    • 747

      會員

    趕快注冊賬號,推廣您的網站吧!
    最新入駐小程序

    數獨大挑戰2018-06-03

    數獨一種數學游戲,玩家需要根據9

    答題星2018-06-03

    您可以通過答題星輕松地創建試卷

    全階人生考試2018-06-03

    各種考試題,題庫,初中,高中,大學四六

    運動步數有氧達人2018-06-03

    記錄運動步數,積累氧氣值。還可偷

    每日養生app2018-06-03

    每日養生,天天健康

    體育訓練成績評定2018-06-03

    通用課目體育訓練成績評定