zoukankan      html  css  js  c++  java
  • RabbitMQ简介

    RabbitMQ简介

    MQ全称为Message Queue,即消息队列,RabbitMQ使用Erlang语言开发。

    它基于AMQP协议(Advanced Message Queue高级消息队列协议)实现的消息队列。

    它是一种应用程序之间通信的方式,在分布式系统中应用十分广泛。

    应用场景

    1、任务异步处理

    将不需要同步处理、耗时长的操作交由消息队列通知消息接收方进行异步处理,提高应用程序的响应时间。

    2、应用解耦和

    MQ相当于一个中介,生产方通过MQ与消费方交互,它将应用程序之间进行了解耦和。

    优势

    使用简单,功能强大。

    基于AMQP协议。

    社区活跃,文档完善。

    高并发性能好。

    基本结构

     

     

    Broker:消息队列服务进程,包括Exchange和Queue。

    Exchange:消息队列交换机,按照一定的规则将消息路由转发到某个队列中。

    Queue:消息队列,存储消息的队列,消息到达队列并转发给指定的消费方。
    Producer:消息生产者,生产者将消息发送到MQ。
    Consumer:消息消费者,接收MQ转发的消息。

    消息发送和接受流程

    发送消息

    • 生产者和Broker建立TCP连接。
    • 生产者和Broker建立通道。
    • 生产者通过通道将消息发送给Broker,由Exchange进行转发。
    • Exchange将消息转发给指定的队列。

    接收消息

    • 消费者和Broker建立TCP连接。
    • 消费者和Broker建立通道。
    • 消费者监听指定的Queue。
    • 当有消息到达Queue时Broker默认将消息推送给消费者。
    • 消费者接收到消息。
  • 相关阅读:
    TensorFlow小记
    Faster R-CNN学习记录
    C语言创建文件夹
    ffmpeg应用:将连续图像转为视频文件
    VMWare 搭建 Hadoop 完全分布式集群(含HBASE)
    HBASE 过滤器
    HBASE API 操作
    [Unity] 打包时报错:UnityEditor.BuildPlayerWindow+BuildMethodException
    [Unity] 有关Unity中使用VideoPlayer突然无法播放视频的问题
    [Unity3D]C#切换plane上的图片
  • 原文地址:https://www.cnblogs.com/beanbag/p/12245986.html
Copyright © 2011-2022 走看看