它是消息传输过程中存放消息的容器二、什么是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环境安装
- erlang版本:opt_win64_24.0_2.exe
- rabitMQ版本: rabbitmq-server-3.9.7.exe
新建系统环境变量ERLANG_HOME
将erlang可执行命令目录添加到系统环境变量path中
打开cmd控制台,输入"erl",输入如下页面则安装成功
设置RABBITMQ_SERVER环境变量
将rabbitmq可执行命令目录添加到系统环境变量path中
RabbitMQ的安装包默认是没有启用任何插件的,所以我们需要运行以下命令来启用RabbmitMQ的管理插件,"rabbitmq-plugins.bat enable rabbitmq_management"
出现上图所示界面说明插件启动成功!
地址:http://localhost:15672/
账号(默认):guest
密码(默认):guest
至此windows版本rabbitmq的安装已经完成!!
- erlang版本:otp_src_24.0.tar.gz
- rabitMQ版本: rabbitmq-server-generic-unix-3.9.7.tar.xz
- socat版本:
8.1 Erlang 安装RabbitMQ 依赖于 erlang 环境,所以先安装 Erlang 注意二者之间的版本依赖,先在 RabbitMQ 看清楚当前 RabbitMQ 依赖于的 relang 对应版本信息。
来到 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



