zoukankan      html  css  js  c++  java
  • RabbitMQ

    RabbitMQ是开源代理和队列服务器,使用Erlang编写,是基于AMQP协议的;AMQP是高级消息队列协议

    RabbitMQ架构

    • Publisher:消息发布者(生产者),向交换器发送消息
    • Exchange:交换器,用来接收生产者发送的消息并将这些消息路由给队列
    • Binding:绑定,用于消息队列和交换器之间的关联。
    • Queue:消息,用来保存消息直到发送给消费者
    • Connection:网络连接如TCP连接
    • Channel:信道,双向数据流通道,多路复用连接
    • Consumer:消费者,从消息队列中取得消息

    Exchange类型

    Exchange分发消息根据类型的不同分发策略也有所不同,Exchange3种类型:

    • Direct(键分发):消息中的路由键(routing key)如果和Binding中的bindingkey一致,交换器就将消息发送到对应的队列。它是完全匹配单播的。

    • Fanout(广播分发):每个发送到fanout类型的交换机的消息都会分发到所有绑定的队列上去。该类型转发消息是最快的

    • Topic:通过模式匹配分配消息。将路由键与某个模式进行匹配,此时队列需要绑定到某个模式上。

  • 相关阅读:
    《算法图解》——第六章 广度有限搜索
    《算法图解》——第一章 算法简介
    《算法图解》——第二章 选择排序
    go-json处理的问题
    Go断言
    Go Example--格式化字符串
    Go Example--strings
    Go Example--组合函数
    Go Example--defer
    Go Example--panic
  • 原文地址:https://www.cnblogs.com/dwx-study/p/14760233.html
Copyright © 2011-2022 走看看