怎么建设自己公司的网站首页,三星网上商城优惠券,免费做简单网站,企业网站制作查询文章目录 1.基本介绍2.Linux下安装配置RabbitMQ1.安装erlang环境1.将文件上传到/opt目录下2.进入/opt目录下#xff0c;然后安装 2.安装RabbitMQ1.进入/opt目录#xff0c;安装所需依赖2.安装MQ 3.基本配置1.启动MQ2.查看MQ状态3.安装web管理插件4.安装web管理插件超时的解决… 文章目录 1.基本介绍2.Linux下安装配置RabbitMQ1.安装erlang环境1.将文件上传到/opt目录下2.进入/opt目录下然后安装 2.安装RabbitMQ1.进入/opt目录安装所需依赖2.安装MQ 3.基本配置1.启动MQ2.查看MQ状态3.安装web管理插件4.安装web管理插件超时的解决方案1.修改etc/hosts文件修改主机名2.重启MQ如果还报错就修改ip与本机ip相同 5.设置开机自启6.关闭MQ7.组合指令1.启动MQ并查看状态2.关闭MQ并查看状态3.重启MQ并查看状态 4.RabbitMQ管控台配置1.开放15672端口1.宝塔开启2.腾讯云开启仅限本机登录 2.访问 http://ip:15672 进行登录1.使用guest用户登录出现权限问题2.进入/etc/rabbitmq 编辑 rabbitmq.config3.将下面这句话粘贴进去4.重启MQ使配置生效5.再次登录成功 3.控制台参数解析1.端口2.交换机默认七个 4.用户管理1.进入Admin2.添加用户test默认不能访问虚拟主机3.给test用户分配可以访问的虚拟主机4.为了安全修改guest用户的密码 5.增加虚拟主机1.添加/test的虚拟主机2.配置test用户可以访问虚拟主机/test3.删除test用户 5.SpringBoot集成MQ1.需求分析2.环境配置1.引入依赖2.MQ的端口配置1.编辑MQ的配置文件2.修改端口5672为6783防止被攻击3.重启MQ使其生效4.测试是否成功5.宝塔开启6783端口6.腾讯云开启 3.配置application.yml4.RabbitMQ配置类创建队列 RabbitMQConfig.java 3.基本使用1.编写消息发送者 MQSender.java2.编写消息接受者 MQReceiver.java3.控制层调用发送消息的方法4.启动测试1.访问 http://localhost:9092/seckill/mq 成功发送和接受消息2.http://ip:15672 在控制台可以进行监控 1.基本介绍 2.Linux下安装配置RabbitMQ
1.安装erlang环境
1.将文件上传到/opt目录下 2.进入/opt目录下然后安装
cd /opt rpm -ivh erlang-21.3-1.el7.x86_64.rpm2.安装RabbitMQ
1.进入/opt目录安装所需依赖
cd /opt yum install socat -y2.安装MQ
rpm -ivh rabbitmq-server-3.8.8-1.el7.noarch.rpm3.基本配置
1.启动MQ
/sbin/service rabbitmq-server start2.查看MQ状态
/sbin/service rabbitmq-server status3.安装web管理插件
rabbitmq-plugins enable rabbitmq_management4.安装web管理插件超时的解决方案
1.修改etc/hosts文件修改主机名 2.重启MQ如果还报错就修改ip与本机ip相同 5.设置开机自启
chkconfig rabbitmq-server on6.关闭MQ
/sbin/service rabbitmq-server stop7.组合指令
1.启动MQ并查看状态
/sbin/service rabbitmq-server start /sbin/service rabbitmq-server status2.关闭MQ并查看状态
/sbin/service rabbitmq-server stop /sbin/service rabbitmq-server status3.重启MQ并查看状态
/sbin/service rabbitmq-server stop /sbin/service rabbitmq-server start /sbin/service rabbitmq-server status4.RabbitMQ管控台配置
1.开放15672端口
1.宝塔开启
systemctl start firewalld firewall-cmd --permanent --add-port15672/tcp firewall-cmd --reload firewall-cmd --query-port15672/tcp2.腾讯云开启仅限本机登录 2.访问 http://ip:15672 进行登录
1.使用guest用户登录出现权限问题 2.进入/etc/rabbitmq 编辑 rabbitmq.config
cd /etc/rabbitmq vim rabbitmq.config3.将下面这句话粘贴进去
[
{rabbit,[{loopback_users,[]}]
}
].4.重启MQ使配置生效
/sbin/service rabbitmq-server stop /sbin/service rabbitmq-server start /sbin/service rabbitmq-server status5.再次登录成功 3.控制台参数解析
1.端口 2.交换机默认七个 4.用户管理
1.进入Admin 2.添加用户test默认不能访问虚拟主机 3.给test用户分配可以访问的虚拟主机 4.为了安全修改guest用户的密码 5.增加虚拟主机
1.添加/test的虚拟主机 2.配置test用户可以访问虚拟主机/test 3.删除test用户 5.SpringBoot集成MQ
1.需求分析 2.环境配置
1.引入依赖 !--rabbitmq-需要的 AMQP 依赖--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-amqp/artifactId/dependency
2.MQ的端口配置
1.编辑MQ的配置文件
cd /etc/rabbitmq vim rabbitmq.config2.修改端口5672为6783防止被攻击
[{rabbit, [{tcp_listeners, [{0.0.0.0, 6783}]},{loopback_users, []}]}
].
3.重启MQ使其生效
/sbin/service rabbitmq-server stop /sbin/service rabbitmq-server start /sbin/service rabbitmq-server status4.测试是否成功
netstat -plnt | grep 67835.宝塔开启6783端口
systemctl start firewalld firewall-cmd --permanent --add-port6783/tcp firewall-cmd --reload firewall-cmd --query-port6783/tcp6.腾讯云开启 3.配置application.yml # RabbitMQ 配置rabbitmq:# 服务器地址host: # 用户名username: # 密码password: ******# 虚拟主机virtual-host: /# 端口port: 6783# 消息监听器配置listener:simple:#消费者最小数量concurrency: 10#消费者最大数量max-concurrency: 10#限制消费者每次只能处理一条消息处理完才能继续下一条消息prefetch: 1#启动时是否默认启动容器默认为 trueauto-startup: true#被拒绝时重新进入队列的default-requeue-rejected: true# 消息重试配置template:retry:#启用消息重试机制默认为 falseenabled: true#初始重试间隔时间initial-interval: 1000ms#重试最大次数默认为 3 次max-attempts: 3#重试最大时间间隔默认 10000msmax-interval: 10000ms#重试的间隔乘数#配置 2 的话第一次等 1s第二次等 2s第三次等 4smultiplier: 14.RabbitMQ配置类创建队列 RabbitMQConfig.java
package com.sxs.seckill.config;import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;/*** Description:** Author sun* Create 2024/5/11 13:58* Version 1.0*/
Configuration
public class RabbitMQConfig {private static final String QUEUE queue;/*** 1. 配置队列* 2. 队列名为 queue* 3. true 表示: 持久化* durable 队列是否持久化。 队列默认是存放到内存中的rabbitmq 重启则丢失* 若想重启之后还存在则队列要持久化* 保存到 Erlang 自带的 Mnesia 数据库中当 rabbitmq 重启之后会读取该数据库*/Beanpublic Queue queue() {return new Queue(QUEUE, true);}
}3.基本使用
1.编写消息发送者 MQSender.java
package com.sxs.seckill.rabbitmq;import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.stereotype.Service;import javax.annotation.Resource;/*** Description: 消息发送者** Author sun* Create 2024/5/11 14:04* Version 1.0*/
Service
Slf4j
public class MQSender {Resourceprivate RabbitTemplate rabbitTemplate;public void send(Object message) {log.info(发送消息: message);// 发送消息到队列需要指定在配置类中配置的队列名rabbitTemplate.convertAndSend(queue, message);}
}
2.编写消息接受者 MQReceiver.java
package com.sxs.seckill.rabbitmq;import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Service;/*** Description: 消息接收者** Author sun* Create 2024/5/11 14:08* Version 1.0*/
Service
Slf4j
public class MQReceiver {// 方法接收消息RabbitListener(queues queue)public void receive(Object message) {log.info(接收消息: message);}
}
3.控制层调用发送消息的方法
package com.sxs.seckill.controller;import com.sxs.seckill.rabbitmq.MQSender;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import javax.annotation.Resource;/*** Description:** Author sun* Create 2024/5/11 14:13* Version 1.0*/
Controller
public class RabbitMQHandler {Resourceprivate MQSender mqSender;// 调用发送消息的方法RequestMapping(/mq)ResponseBodypublic void mq() {mqSender.send(hello rabbitmq);}
}
4.启动测试
1.访问 http://localhost:9092/seckill/mq 成功发送和接受消息 2.http://ip:15672 在控制台可以进行监控
相关文章: