RabbitMQ入门

本文介绍了RabbitMQ的基本概念,包括其作为开源消息代理的原理、AMQP协议模型、Docker安装方法,以及RabbitMQ的架构组件如Server、Connection、Channel、Message、Virtualhost、Exchange、Queue等。还涵盖了如何在Springboot项目中整合RabbitMQ进行消息发送。
摘要由CSDN通过智能技术生成

1、RabbitMQ概念简介

RabbitMQ是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数据,RabbitMQ是使用Erlang语言来编写的,并且RabbitMQ是基于AMQP协议的。

  • AMQP协议模型

在这里插入图片描述
AMQP全称:Advanced Message Queuing Protocol(高级消息队列协议)

2、RabbitMQ安装和使用

RabbitMQ官网地址
RabbitMQ采用docker安装还是比较方便的。

  1. 拉取镜像容器安装
    在这里插入图片描述
  2. 拉取RabbitMQ镜像
    没有镜像就拉取(我这里有镜像)
docker pull rabbitmq
  1. 创建并启动容器
docker run rabbitmq的name或者id
  1. 到此,rabbitMQ服务已经启动了
  2. 访问web管理页面
    现在可以访问web界面,浏览器访问:http://192.168.xxx.xxx:15672,使用默认的 guest/guest用户登录。
    在这里插入图片描述我安装的时候发现rabbitmq管理页面无法显示绘图组件,经过查询,发现是要安装一些插件才能正常显示。

3、RabbitMQ的整体架构

在这里插入图片描述
AMQP核心概念
Server:又称Broker,接受客户端的链接,实现AMQP的实体服务
Connection:连接,应用程序与Broker的网络连接
Channel:网络通道,几乎所有的操作都在Channel中进行,Channe是进行消息读写的通道。客户端可建立多个Channel,每个Channel代表一个会话任务。
Message:消息,服务器和应用程序之间传送的数据,由Properties和Body组成。Properties可以对消息进行修饰,比如消息的优先级延迟等高级特性;Body则就是消息体内容。
Virtual host:虚拟地址,用于进行逻辑隔离,最上层的消息路由一个Virtual Host里面可以有若干个Exchange和Queue,同一个VirtualHost 里面不能有相同名称的Exchange或Queue。
Exchange:交换机,接收消息,根据路由键转发消息到绑定的队列。
Binding: Exchange和Queue之间的虚拟连接, binding中可以包含routing key。
Routing key:一个路由规则,虚拟机可用它来确定如何路由一个特定消息。
Queue: 也称为Message Queue,消息队列,保存消息并将它们转发给消费者。
RabbitMQ执行流程
在这里插入图片描述

4、RabbitMQ整合Springboot-生产端发送消息

1、引入pom依赖
2、对application文件进行配置

RabbitMQ是一款使用Erlang语言开发的开源消息中间件,实现了AMQP(高级消息队列协议)。它具有以下特点: 1. 可靠性:支持持久化、传输确认、发布确认等机制,保证了消息的可靠性。 2. 灵活的消息分发策略:消息在进入RabbitMQ之前由交换机进行路由,可以根据不同的分发策略进行消息的分发,包括简单模式、工作队列模式、发布订阅模式、路由模式、通配符模式等。 3. 支持集群:多台RabbitMQ服务器可以组成一个集群,形成一个逻辑Broker,提高了可用性和扩展性。 4. 支持多种协议和语言客户端:RabbitMQ支持多种消息队列协议,如STOMP、MQTT等,同时也支持多种编程语言的客户端。 5. 可视化管理界面:RabbitMQ提供了一个易用的用户界面,方便用户监控和管理消息Broker。 6. 插件机制:RabbitMQ提供了许多插件,可以通过插件进行扩展,也可以编写自己的插件。 要开始使用RabbitMQ,首先需要安装RabbitMQ并配置相关信息。在Windows系统中,可以按照官方文档的指引进行安装。在配置文件中,需要指定RabbitMQ的主机、端口、用户名和密码等信息。 参考资料: \[1\] RabbitMQ官网 \[2\] application.yml配置文件 \[3\] RabbitMQ入门指南文章 希望这些信息对你有帮助! #### 引用[.reference_title] - *1* *2* *3* [超详细的RabbitMQ入门](https://blog.csdn.net/Rok728/article/details/123106242)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值