RabbitMQ (入门概念篇)

Posted 小青年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RabbitMQ (入门概念篇)相关的知识,希望对你有一定的参考价值。

         RabbitMQ是基于AMQP(Advanced Message Queuing Protocol)的可复用的消息系统,AMQP提供统一消息服务的应用层的标准高级消息队列协议,用于消息中间件的设计。

RabbitMQ的开发语言是Erlang,可以使完全不同的Application共享数据。是程序中解耦的一大利器,当程序中一些不需要及时返回且耗时时间比较长的逻辑,可以使用MQ进行异步处理,缩短了请求响应时间,吞吐就大了。

基本概念

1:Host :Server服务器主机

          (name主机名,port端口,VirtualHost虚拟主机,username用户名,password密码)

2:Exchange:交换机,用于指定消息按照什么规则,路由到什么队列。

               (name,交换机名称,type交换机类型,Durable是否持久化,AutoDelete是否自动删除)

      其中交换机类型包括(topic,direct,fanout,x-delayed-message)

3:Queue :队列,即消息的容器,每个消息都可以生产到一个或多个队列。

     (name:队列名称,Durable是否持久化,AutoDelete是否自动删除,NoAck是否消息确认)

4:RoutingKey:路由关键字。Exchange根据此进行消息投递。

5:Binding:绑定,按照路由关键字把Exchange和Queue绑定关联起来。

6:Channel:消息的传输信道。每一个连接,可建立多Channel,每个Channel代表一个会话。

7:Producer:生产者。发送消息的程序。

8:Consumer:消费者。接收消息的程序。

 

生产/消费的流程

  1:根据Server主机地址,端口,虚拟主机,账号和密码 设置ConnectionFactory

  2:创建新的连接 NewConnection

  3:创建通道 CreateChannel

  4:声明创建队列QueueDeclare

  5:发送消息Publish/接收消息Consume

  6:关闭通道CloseChannel

  8:关闭连接CloseConnection

 

以上是关于RabbitMQ (入门概念篇)的主要内容,如果未能解决你的问题,请参考以下文章

RabbitMQ 超详细入门篇

Spring Boot 入门之消息中间件篇

转帖H5 手机 App 开发入门:概念篇

Linux Capabilities 入门教程:概念篇

入门篇:函数计算的基本概念和通用场景概述

容器技术概念入门篇 (5讲)