1、安装erlang语言环境
1.1 创建 erlang安装目录
mkdir erlang
1.2 上传解压压缩包
上传到: /root/
解压缩# tar -zxvf otp_src_22.0.tar.gz
1.3 进入解压缩目录,指定目录并安装
进入解压目录,指定安装目录# ./configure --prefix=/usr/local/kh96/erlang
安装# make install
添加环境变量# echo 'export PATH=$PATH:/usr/local/kh96/erlang/bin' >> /etc/profile
刷新环境变量# source /etc/profile
1.4 测试环境
进入erlang环境#erl
退出# halt().
2、安装RabbitMQ
2.1上传解压压缩包
第一步xx.tar.xz->xx.tar # /bin/xz -d rabbitmq-server-generic-unix-3.7.15.tar.xz
第二步#tar -xvf rabbitmq-server-generic-unix-3.7.15.tar
2.2 添加环境变量
添加环境变量# echo 'export PATH=$PATH:/usr/local/kh96/rabbitmq/rabbitmq_server-3.7.15/sbin' >> /etc/profile
刷新环境变量# source /etc/profile
2.3 启动
启动# rabbitmq-server -detached
查看状态# rabbitmqctl status
查看防火墙状态# firewall-cmd --state (建议不开)
2.4 开启云服务端口
RabbitMQ 服务端口: 5672
RabbitMQ 监控平台端口: 15672
开启web插件允许监控平台访问 # rabbitmq-plugins enable rabbitmq_management
2.5 远程 访问 15672
公网ip:15672
Username: guest
Password: guest
提示这个这个账号只允许本地访问,所以需要添加用户
2.6 添加用户
显示所有用户# rabbitmqctl list_users
查看guest用户权限# rabbitmqctl list_user_permissions guest
添加admin用户及密码# rabbitmqctl add_user admin admin
设置限权# rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
授予admin用户administrator角色# rabbitmqctl set_user_tags admin administrator
查看admin用户权限# rabbitmqctl list_user_permissions admin
删除用户guest# rabbitmqctl delete_user guest
停止RabbitMQ# rabbitmqctl stop
2.7 登录成功
Username: admin
Password: admin
3、SpringBoot整合
3.0 项目准备
3.0.1 jar包
<!--rabbitmq依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
3.0.2 配置信息
# 端口
server:
port: 8104
# RabbitMQ配置
spring:
rabbitmq:
host: x.xxx.xx.xx #服务器公网ip
port: 5672
username: admin
password: admin
3.0.3 常量类
/**
* Created On : 1/11/2022.
* <p>
* Author : huayu
* <p>
* Description: RabbitMQ 常量类,系统的所有队列名,交换机名,路由键名等,统一进行配置管理
*/
public class RabbitMQConstant {
//========================== 直连模式
/**
* Direct直连模式 队列名
*/
public static final String RABBITMQ_DIRECT_QUEUE_NAME_KH96 ="rabbitmq_direct_queue_name_kh96";
/**
* Direct直连模式 交换机名
*/
public static final String RABBITMQ_DIRECT_EXCHANGE_KH96 ="rabbitmq_direct_exchange_kh96";
/**
* Direct直连模式 路由键
*/
public static final String RABBITMQ_DIRECT_ROUTING_KEY_KH96 ="rabbitmq_direct_routing_key_kh96";
//========================== 扇形模式
/**
* Fanout 扇形模式 队列名one
*/
public static final String RABBITMQ_FANOUT_QUEUE_NAME_KH96_ONE ="rabbitmq_fanout_queue_name_kh96_one";
/**
* Fanout 扇形模式 队列名two
*/
public static final String RABBITMQ_FANOUT_QUEUE_NAME_KH96_TWO ="rabbitmq_fanout_queue_name_kh96_two";
/**
* Fanout 扇形模式 交换机名
*/
public static final String RABBITMQ_FANOUT_EXCHANGE_KH96 ="rabbitmq_fanout_exchange_kh96";
//========================== 主题模式
// -- 队列
/**
* Topic 主题模式 队列名one
*/
public static final String RABBITMQ_TOPIC_QUEUE_NAME_KH96_ONE ="rabbitmq_topic_queue_name_kh96_one";
/**
* Topic 主题模式 队列名two
*/
public static final String RABBITMQ_TOPIC_QUEUE_NAME_KH96_TWO ="rabbitmq_topic_queue_name_kh96_two&quo