这是我参与「掘金日新计划 · 6 月更文挑战」的第1天,点击查看活动详情
前言
大家好,我是程序猿小白 GW_gw,很高兴能和大家一起学习进步。
以下内容部分来自于网络,如有侵权,请联系我删除,本文仅用于学习交流,不用作任何商业用途。
摘要
本文主要带大家了解什么是RabbitMQ,以及如何简单安装RabbitMQ(linux操作系统下)。
RabbitMQ
1. 什么是MQ
MQ全称是MessageQueue,即消息队列。看到名字我们应该有些明白,这是一个队列,那什么是消息呢?
消息是指在应用间传送的数据。
显而易见消息队列就是存放应用间传送的数据的一个队列。
2. 为什么要使用MQ
那么为什么要使用消息队列呢?应用之间直接传递不就好了。这就要从它的工作方式来说了。
消息队列是一种异步的服务间通信方式,使用消息队列可以减少我们的等待时间,并且可以进行生产者(发送方)和消费者(接收方)之间的解耦。生产者只需要把消息放到消息队列中,而不需要了解消费者的信息。而消费者也只需要从队列中获取需要的信息,不需要关心生产者的信息。
特点:
- 消息队列是一种异步的服务间通信方式,适用与无服务器和微服务架构。可用于分离重量级处理、缓冲或批处理以及环节高峰期工作负载。
- 消息在被处理前一直存储在队列上。
- 每条消息仅可被一位用户处理一次。
借用官方的一张图来辅助理解:
常见的应用场景:最终一致性、广播、错峰流控。
3. RabbitMQ
RabbitMQ 是轻量级的,最受欢迎的开源消息代理之一,易于在本地和云端部署。它支持多种消息传递协议。RabbitMQ 可以部署在分布式和联合配置中,以满足大规模、高可用性的要求。
RabbitMQ默认使用AMQP 0-9-1协议,但是可以通过集成插件来使用STOMP和MQTT以及AMQP 1.0协议。
AMQP 即Advanced Message Queuing Protocol,是一个应用层标准高级消息队列协议,是一种二进制应用层协议,用于应对广泛的面向消息应用程序的支持。
3.1 安装RabbitMQ
3.1 安装RabbitMQ
RabbitMQ使基于Erlang语言来开发的,所以在安装Rabbit之前,我们需要先安装Erlang。
使用如下命令下载存储库,也是官方推荐的一种方式。
# 安装RabbitMQ的存储库
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
# 安装Erlang存储库
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
注意安装对应版本。
安装erlang
yum -y install erlang-23.3.4.3-1.el7.x86_64
安装rabbitMQ-server
yum -y install rabbitmq-server-3.8.19-1.el7.noarch
安装完毕后进行测试:
erl -version
小结
以上就是关于RabbitMQ,以及如何简单安装RabbitMQ(linux操作系统下)。希望能对读者有所帮助,如有不正之处,欢迎留言指正,明天我们继续来学习RabbitMQ如何使用。