RabbitMQ从入门到精通(一)

一、什么是消息队列

消息指的是两个应用间传递的数据。数据的类型有很多种形式,可能只包含文本字符串,也可能包含嵌入对象。

“消息队列(Message Queue)”是在消息的传输过程中保存消息的容器。在消息队列中,通常有生产者和消费者两个角色。生产者只负责发送数据到消息队列,谁从消息队列中取出数据处理,他不管。消费者只负责从消息队列中取出数据处理,他不管这是谁发送的数据。
简单的举例解释就是:
小张让小王看书,由于小王看书需要时间,小张是看到好看的书就想让小张看。所以,小张将书放到书架上,小王只管在书架上取书看即可,小张也不需要去通知小王,他看到好看的书放到书架上即可。这个书架就是消息队列,小张就是生产者,小王是消费者。

二、认识RabbitMQ的图形化界面

首先安装Rabbitmq,测试完安装后,打开浏览器,输入:http://localhost:15672,来到图形化界面登录页,输入用户名:guest和密码:guest登录页面。
上图即为RabbitMQ图形化界面登录页
首页进去是一个TOP横幅,上面是RabbitMQ的版本和Erlang版本信息.
在这里插入图片描述

1.Overview(概述)
记录一些本地rabbit的磁盘信息和内存占用,而后是一个监听端口,意思是协议的端口。
在这里插入图片描述

这里我们需要记下amqp协议的端口5672.因为rabbitmq就是遵从amqp协议的erlang语言实现的消息列队框架技术.也就是我们需要在rabbitmq开发和实现时,必须要用此端口来进行连接.
3. Connections (连接)
在这里插入图片描述
连接界面此时是空的,看似什么也没有,但是通过词意大概可以猜想到,这个界面记录应该是展示客户端或者某个服务连接到此rabbitmq的信息展示,那么通过什么连接呢?
IP?用户名?密码?还有端口,前3个都有了,那么后面的端口呢,是不是概述里面的监听协议端口。显然是的。
刚入门之初,我一直以为是15672,事实证明是错的,5672才是正确的协议连接端口。
连接成功,用的协议amqp当然用的是协议端口。
4. Channels 信道
在这里插入图片描述
信道抽象理解一下,就是在创建连接的时候,我们还需要给一个信道,其实就是我们刚刚举例的书架。
5. Exchanges (交换机)
在这里插入图片描述

交换机的理解就是在第三步创建信道后,信道上需要设置一个交换器.那么用交换器去做什么呢,往下看.
在这里插入图片描述
界面一个列表,Name列就是名称,Type是交换器类型,既然类型那么交换器肯定通过类型会做不同的逻辑处理.还有一个Features特性列,证明在我们实现代码的时候也需要如此定位类型。
D表示(durable(持久化的)),I表示(internal(内在的))
词面理解交换器可以是持久化的也可以定义为内部内在的,外部无法访问,只能通过交换器之间来访问
接下来点开某个交换器看下
在这里插入图片描述
4.1 绑定queue(列队)Routing key(路由) Arguments(参数)

4.2 发布信息Routing key(路由) 证明这个Routing key(路由key)也是至关重要的.

交换器绑定通过路由key绑定列队进行消息发布.

5 Queues(列队)
在这里插入图片描述
列队用于存储消息.等待消息被接收.
在理论层面上来看,以上都是生产者需要做的工作

5 Admin(用户)
在这里插入图片描述
以上为登录用户管理,可以新增和管理用户权限,我已经新增了一个test用户。
java如何操作rabbitmq下个文章详解…

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
RabbitMQ是一个开源的消息中间件,它实现了高级消息队列协议(AMQP)并提供可靠的消息传递机制。下面是RabbitMQ从入门到精通的介绍: 1. RabbitMQ基础概念: - 消息:在RabbitMQ中,消息是指要传递的数据单元。 - 队列:消息在RabbitMQ中存储的地方,类似于一个邮箱。 - 交换机:接收生产者发送的消息,并将消息路由到一个或多个队列。 - 绑定:用于将交换机和队列关联起来,定义了消息如何从交换机路由到队列。 - 路由键:用于交换机将消息路由到队列的规则。 2. RabbitMQ工作模式: - 简单模式:一个生产者向一个队列发送消息,一个消费者从该队列接收消息。 - 工作队列模式:一个生产者向一个队列发送消息,多个消费者从该队列接收消息。 - 发布/订阅模式:一个生产者发送消息到交换机,多个消费者绑定到该交换机并接收消息。 - 路由模式:一个生产者发送消息到交换机,并指定路由键,多个消费者根据不同的路由键接收消息。 - 主题模式:一个生产者发送消息到交换机,并指定主题,多个消费者根据不同的主题接收消息。 3. RabbitMQ高级特性: - 消息确认机制:生产者发送消息后,可以等待RabbitMQ的确认,确保消息已经被正确接收。 - 消息持久化:将消息存储到磁盘上,即使RabbitMQ服务器重启,消息也不会丢失。 - 消息优先级:可以为消息设置优先级,确保重要的消息被优先处理。 - 死信队列:当消息无法被消费时,可以将其发送到死信队列进行处理。 - 集群和高可用性:通过搭建RabbitMQ集群实现高可用性和负载均衡。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值