一、环境
Windows11 + WSL(Ubuntu 24.04.1)
二、思路
1 用Windows中的Ubuntu安装RabbitMQ,贴近Linux的线上环境;
2 RabbitMQ用erlang语言编写的,先安装erlang的运行环境;
2 用Linux的apt-get命令安装,解决软件依赖的问题,省去官网下载步骤;
4 配置Ubuntu国内镜像,避免安装时连接国外网站慢的问题;
三、步骤
1 设置国内镜像
有设置镜像,则跳过。
1.1 查看Ubuntu版本
cat /etc/issue
1.2 获取镜像地址
本例用清华的镜像(其他类似):
ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
选择对应的Ubuntu版本(noble版本),得到镜像地址如下(上图列出了atp镜像的保存文件soures.list):
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-backports main restricted universe multiverse# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
deb http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
1.3 备份镜像地址
cp /etc/apt/sources.list /etc/apt/sources.list.bak
1.4 编辑镜像内容
1)vi命令打开镜像文件
vi /etc/apt/sources.list
2)进入命令行模式
vi命令参考 Linux——vi命令详解[通俗易懂]-腾讯云开发者社区-腾讯云
用到的命令如下(命令行模式):
dd 删除光标行
p 粘贴(点鼠标右键亦可)
wq! 保存文件退出vi
1.5 查看修改内容
1.6 验证镜像地址
sudo apt-get update -y
2 更新软件包
前面有update则跳过。-y表示自动回答"Yes",即在执行命令时自动确认所有提示和确认对话框。
sudo apt-get update -y
3 安装erlang
sudo apt-get install erlang -y
4 验证erlang
运行erl命令,查看是否安装成功,查看对应版本。用ctr+c退出。
erl
5 安装RabbitMQ
sudo apt-get install rabbitmq-server -y
6 查看MQ的状态
安装成功后,自动running
systemctl status rabbitmq-server
7 查看MQ的日志
cd /var/log/rabbitmq/
查看rabbitmq-server.log排查问题,比如端口冲突等。
8 安装管理界面
rabbitmq-plugins enable rabbitmq_management
9 启动服务
安装时自动启动,可跳过此步
sudo service rabbitmq-server start
10 管理界面
http://localhost:15672/
默认的用户名和密码都是guest(guest只能本地访问,非本地需要添加用户)。
11 添加用户
rabbitmqctl add_user admin admin
12 添加角色
rabbitmqctl set_user_tags admin administrator
用户名和密码都是admin,进入 RabbitMQ 管理界面。用户的6种角色:
- Administrator:超级管理员,可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略 (policy) 进行操作(简单理解就是所有权限);
- Monitoring:监控者,可登陆管理控制台(启用 management plugin的情况下),同时可以查看
RabbitMQ 节点的相关信息(如进程数,内存使用情况,磁盘使用情况等);
- Policymaker:策略制定者,可登陆管理控制台(启用management plugin的情况下),同时可以对policy 进行管理,但无法查看节点的相关信息;
- Management:普通管理者,仅可登陆管理控制台(启用 management plugin的情况下),无法看到节点信息,也无法对策略进行管理;
- Impersonator:模拟者,无法登录管理控制台;
- None:其他用户,无法登陆管理控制台,通常就是普通的生产者和消费者。
13 查看端口
14 代码样例
写代码之前 ,先在管理界面创建交换器、队列、绑定。
14.1 创建交换器
名称:fanout-exchange,类型:fanout
创建的交换器如下
14.2 创建队列
创建3个队列queue01、queue02、queue03
创建的队列如下
14.3 绑定队列
点击fanout-exchange的名称,跳转到如下页面。把3个队列都绑定到fanout-exchange交换器
交换器和队列绑定之后
未完待续...
参考
如何在 Ubuntu 安装 RabbitMQ_ubuntu安装rabbitmq-CSDN博客
消息模式(fanout、direct、topic、work)_rabbitmq fanout-CSDN博客