RabbitMQ简介及在Linux中安装部署(yum或者Docker)

一、RabbitMQ简介及其作用

RabbitMQ简介

RabbitMQ是在2007 年发布,是一个在 AMQP(高级消息队列协议)基础上完成的,可复用的企业消息系统,是当前最主流的消息中间件之一。RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue 高级消息队列协议 )的开源实现,由于erlang 语言的高并发特性,性能较好,本质是个队列,FIFO 先入先出,里面存放的内容是message。RabbitMQ 是一个消息中间件:它接收消息并且转发,就类似于一个快递站,卖家把快递通过快递站,送到我们的手上,MQ也是这样,接收并存储消息,再转发。

RabbitMQ的主要作用:

  1. 异步处理。把消息放入消息中间件中,等到需要的时候再去处理。
  2. 流量削峰。例如秒杀活动,在短时间内访问量急剧增加,使用消息队列,当消息队列满了就拒绝响应,跳转到错误页面,这样就可以使得系统不会因为超负载而崩溃。
  3. 日志处理
  4. 应用解耦。假设某个服务A需要给许多个服务(B、C、D)发送消息,当某个服务(例如B)不需要发送消息了,服务A需要改代码再次部署;当新加入一个服务(服务E)需要服务A的消息的时候,也需要改代码重新部署;另外服务A也要考虑其他服务挂掉,没有收到消息怎么办?要不要重新发送呢?是不是很麻烦,使用MQ发布订阅模式,服务A只生产消息发送到MQ,B、C、D从MQ中读取消息,需要A的消息就订阅,不需要了就取消订阅,服务A不再操心其他的事情,使用这种方式可以降低服务或者系统之间的耦合。

二、使用yum安装部署的步骤

1.环境配置:

echo "export LC_ALL=en_US.UTF-8"  >>  /etc/profile

curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash


curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash

2.安装RabbitMQ(记得输入: y)

sudo yum install rabbitmq-server-3.8.2-1.el7.noarch

3.启动RabbitMQ

systemctl start rabbitmq-server

4.添加admin用户(Username: admin   Password: password)

rabbitmqctl add_user admin password

rabbitmqctl set_user_tags admin administrator

rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"

5.开放端口号15672,并且登录

rabbitmq:3.8版本开始,管理插件包含在RabbitMQ发行版中。与其他任何插件一样,必须先启用它,然后才能使用它。这是使用rabbitmq-plugins完成的:执行此命令即可:

rabbitmq-plugins enable rabbitmq_management
firewall-cmd --zone=public --add-port=15672/tcp --permanent 

firewall-cmd --reload 

firewall-cmd --zone=public --list-ports

浏览器访问ip: 15672,用admin,密码password即可登录

三、使用Docker部署的步骤

使用Docker安装RibbitMQ相对与yum更加简单点

1.首先拉取镜像

docker pull rabbitmq:3.8-management

2. 使用以下命令来运行(用户名:buliangshuai  密码:123456)

docker run \
 -e RABBITMQ_DEFAULT_USER=buliangshuai \
 -e RABBITMQ_DEFAULT_PASS=123456 \
 -v mq-plugins:/plugins \
 --name mq \
 --hostname mq \
 -p 15672:15672 \
 -p 5672:5672 \
 -d \
 rabbitmq:3.8-management

至于开放端口、添加权限等操作可看上下文。 

四、RabbitMQ相关的基础命令

1.开启web管理界面

rabbitmq-plugins enable rabbitmq_management

2.停止RabbitMQ

rabbitmqctl stop

3.设置开机启动

systemctl enable rabbitmq-server

4.启动RabbitMQ

systemctl start rabbitmq-server

5.看看端口有没有起来,查看状态

rabbitmqctl status

6.要检查RabbitMQ服务器的状态,请运行:

systemctl status rabbitmq-server

7.添加权限

rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值