rabbitMQ消息队列的介绍、安装与基本使用

rabbitMQ消息队列的介绍、安装与基本使用

一、什么是消息队列?

它是消息传输过程中存放消息的容器

二、什么是rabbitMQ?

用Erlang编写的,实现了高级消息队列协议(AMQP)的消息中间件

三、消息队列的好处

1、跨语言,支持PHP,GO,JAVA,Python ....
2、解耦
3、异步
4、削峰

四、应用场景

1、跨系统间的调用
2、系统内的异步调用
3、消息驱动的场景
4、跨语言之间的调用

五、相关术语

Producer 生产者:发送消息到队列
Consumer 消费者:从队列中取出消息消费掉
Queue 存储消息的容器
Channel 消息通道
Exchange 交换机:决定消息按照指定规则发送到队列中
Routing Key:路由关键字

六、 rabbitMQ与Erlang版本关系图在这里插入图片描述

七、windows环境安装

7.1 根据需求下载指定的erlang和rabitmq版本
7.2 安装erlang并设置环境变量

新建系统环境变量ERLANG_HOME
在这里插入图片描述
将erlang可执行命令目录添加到系统环境变量path中
在这里插入图片描述
打开cmd控制台,输入"erl",输入如下页面则安装成功
在这里插入图片描述

7.3 安装rabbitMQ并设置环境变量

设置RABBITMQ_SERVER环境变量
在这里插入图片描述
将rabbitmq可执行命令目录添加到系统环境变量path中
在这里插入图片描述

7.4 启用RabbitMQ管理插件
RabbitMQ的安装包默认是没有启用任何插件的,所以我们需要运行以下命令来启用RabbmitMQ的管理插件,"rabbitmq-plugins.bat enable rabbitmq_management"

在这里插入图片描述
出现上图所示界面说明插件启动成功!

7.5 浏览器访问管理界面

地址:http://localhost:15672/
账号(默认):guest
密码(默认):guest
在这里插入图片描述
在这里插入图片描述
至此windows版本rabbitmq的安装已经完成!!

八、Linux环境安装(Centos7)

  • erlang版本:otp_src_24.0.tar.gz
  • rabitMQ版本: rabbitmq-server-generic-unix-3.9.7.tar.xz
  • socat版本:

RabbitMQ 依赖于 erlang 环境,所以先安装 Erlang 注意二者之间的版本依赖,先在 RabbitMQ 看清楚当前 RabbitMQ 依赖于的 relang 对应版本信息。

8.1 Erlang 安装

来到 Erlang 官网,找到自己需要安装的版本。

在这里插入图片描述

将下载好的 Erlang ,上传到 linux 服务器上,建议上传到 /usr/local 路径下

在这里插入图片描述

开始安装步骤

# 先到 /usr/local 文件下,开始解压
# cd /usr/local

# 解压 erlang 文件
# tar -zxvf otp_src_24.0.tar.gz

# 安装 erlang 依赖工具
# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel 

# 在当前文件下 /usr/local 下,新建 erlang 用来存环境
# mkdir erlang

# 进入到 otp_src_24.0 里
# cd otp_src_24.0

# 执行安装环境, 注意 --prefix=是你需要安装在那个文件夹里,一定是自己创建的空文件夹
# ./configure --prefix=/usr/local/erlang --without-javac

# 执行完后,预安装,安装到上面配置的 --prefix=文件夹内
# make && make install

# 测试是否安装成功
# ./bin/erl
Erlang/OTP 24 [erts-12.0] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1]

Eshell V12.0  (abort with ^G)
1> 

# 执行命令,查看是否有效
1> io:format("hello world~n", []).
hello world
ok

# 综上能一模一样显示,表示 erlang 安装成功

# 接下来就是配置环境变量
# vim /etc/profile
# 配置内容
export ERLANG=/usr/local/erlang
export PATH=$PATH:${ERLANG}/bin
# 刷新环境配置
# source /etc/profile

# 直接输入 erl,若是可以进入以下效果,表示环境变量配置成功
Erlang/OTP 24 [erts-12.0] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1]

Eshell V12.0  (abort with ^G)
1>

8.2 RabbitMQ 安装

版本选择:RabbitMQ 依赖于 erlang 环境,所以先安装 Erlang 注意二者之间的版本依赖,先在 RabbitMQ 看清楚当前 RabbitMQ 依赖于的 relang 对应版本信息。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

通过版本选择,erlang是24.0/version,而RabbitMQ是3.9.7/version,打开官网下载,建议来到 GitHub 上来下载,明显可以看到版本差异和源码的下载。

在这里插入图片描述
在这里插入图片描述

下载好后,上传到 linux 的 /usr/local目录下 ,把这当成自定义安装方式位置
在这里插入图片描述

开始安装步骤

# 解压安装 xz
# xz -d rabbitmq-server-generic-unix-3.9.7.tar.xz

# 解压安装 tar
# tar -xvf rabbitmq-server-generic-unix-3.9.7.tar

# 重命名 rabbitmq
# mv rabbitmq_server-3.9.7/ rabbitmq

# 配置环境变量
# vim /etc/profile
# 内容
export RABBITMQ=/usr/local/rabbitmq
export PATH=$PATH:${RABBITMQ}/sbin
# 刷新环境变量
# source /etc/profile

RabbitMQ 相关操作命令

说明命令
页面管理插件rabbitmq-plugins enable rabbitmq_management
开启服务(页面形式)rabbitmq-server
开启服务(后台运行)rabbitmq-server -detached
创建用户(需要开启服务)rabbitmqctl add_user 用户名 密码
设置用户权限(需要开启服务)rabbitmqctl set_permissions -p “/” 用户名 “.” “.” “.*”
设置用户角色(系统管理员)(需要开启服务)rabbitmqctl set_user_tags 用户名 administrator
服务重启rabbitmq-server restart
停止服务rabbitmqctl stop
查看服务状态rabbitmqctl status
展示角色rabbitmqctl list_users
开启某个插件(需要重启服务)rabbitmq-plugins enable xx
关闭某个插件(需要重启服务)rabbitmq-plugins disable xx

执行命令

# 安装页面管理插件
# rabbitmq-plugins enable rabbitmq_management

# 开启服务,后台运行
# rabbitmq-server -detached

# 注:添加用户和权限都要,先开启 RabbitMQ 服务
# 页面管理,用户 guest 是不能使用的,手动创建一个用户,并赋予权限
# rabbitmqctl add_user admin admin

# 添加权限 .* 表示最高权限/所有权限
# rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"

# 添加用户名角色,这里添加为 administrator (系统管理员)
# rabbitmqctl set_user_tags admin administrator

# 综上修改,必须重启
# rabbitmq-server restart
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JasonHome

你的鼓励是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值