springboot之rabbitmq安装与实践
环境:腾讯云centos7
注意:rabbitmq安装插件,可能会报错。本人是主机名的问题,所以修改了主机名。 vim /etc/hosts vim /etc/hostname 修改这两个文件,并重启主机,然后再运行rabbitmq,没有问题了。
1、下载安装包
https://www.rabbitmq.com/install-generic-unix.html
2、解压
安装xz :yum -y install xz
xz -d rabbitmq-server-generic-unix-3.7.17.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.7.17.tar
3、安装
mkdir /usr/java/ mv rabbitmq-server-generic-unix-3.7.17 /usr/java/rabbitmq-server cd /usr/java/rabbitmq-server/sbin
4、安装erlang
由于rabbitmq是erlang语言开发,所以需要该语言环境
yum install erlang -y
5、安装管理界面插件
rabbitmq-plugins enable rabbitmq_management
6、运行mq
启动服务:rabbitmq-server -detached 或者 rabbitmq-server start
查看状态:rabbitmqctl status
关闭服务:rabbitmqctl stop
查看插件列表:abbitmq-plugins list
新增用户:rabbitmqctl add_user Username Password
删除用户:rabbitmqctl delete_user Username
修改用户密码:rabbitmqctl change_password Username Newpassword
查看当前用户列表:rabbitmqctl list_users
7、验证是否启动
ss -tnalp 查看端口,如果有15672,则运行成功。
8、进入web界面
http://ip:15672/ 初始账号/密码:guest/guest 登录报错:User can only log in via localhost
原因:rabbitmq从3.3.0开始禁止使用guest/guest权限通过除localhost外的访问
解决方法:找到ebin/rabbit.app文件,将 {loopback_users, [<<"guest">>]}, 改为{loopback_users, []}
完毕!
#######springboot集成实践######
1、pom.xml文件添加依赖
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-amqp -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
<version>2.1.3.RELEASE</version>
</dependency>
2、在yml文件中添加服务ip
#默认使用配置 #activemq
spring:
rabbitmq:
host: 132.232.44.82
3、RabbitMQConfig.java 这个文件不能少,否则启动报错(所有的消息的topic都要在这个文件进行注册)
package com.cn.commodity.config; import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; @Configuration
public class RabbitMQConfig {
//direct模式,直接根据队列名称投递消息
@Bean
public Queue logOpQueue(){
return new Queue("oplog");
} @Bean
public Queue logErrQueue(){
return new Queue("errlog");
} //不要偷懒 一定要声明
@Bean
public Queue chatMessageQueue(){
return new Queue("yang");
} @Bean
public Queue mapMessageQueue(){
return new Queue("rabbitmq_map");
}
}
4、RabbitmqProducer.java
package com.cn.commodity.controller; import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; @RestController
public class RabbitmqProducer {
@Autowired
private RabbitTemplate rabbitTemplate;
@RequestMapping(value = "testSend")
public void testSend(String msg){
rabbitTemplate.convertAndSend("yang","rabbitmq 发送消息:"+msg);
}
@RequestMapping(value = "testSendMap")
public void testSendMap(String msg){
rabbitTemplate.convertAndSend("rabbitmq_map","rabbitmq 发送消息:"+msg);
} }
5、RabbitmqConsumer.java
package com.cn.commodity.controller; import org.springframework.amqp.rabbit.annotation.RabbitHandler;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component; import java.util.HashMap;
import java.util.Map; @Component
public class RabbitmqConsumer {
@RabbitHandler
@RabbitListener(queues="yang" )
public void showMessage(String message){
System.out.println("yangwj接收到消息:"+message);
} @RabbitHandler
@RabbitListener(queues="rabbitmq_map" )
public void showMessage(){
Map map = new HashMap();
map.put("1","大爷你好");
System.out.println("yangwj接收到消息:"+map);
}
}
启动运行,完毕!
springboot之rabbitmq安装与实践的更多相关文章
- springboot之kafka安装与实践
环境:腾讯云centos7 1.下载 http://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.11-2.3.0.tgz 2.解压 tar -xvf ka ...
- springboot之activemq安装与实践
环境:腾讯云centos7 注意:activemq安装插件,可能会报错.本人是主机名的问题,所以修改了主机名. vim /etc/hosts vim /etc/hostname 修改这两个文件,并重启 ...
- SpringBoot(九)RabbitMQ安装及配置和使用,消息确认机制
Windows下RabbitMQ安装及配置地址: https://blog.csdn.net/zhm3023/article/details/82217222RabbitMQ(四)订阅模式:https ...
- Spring-boot之 rabbitmq
今天学习了下spring-boot接入rabbitmq. windows下的安装:https://www.cnblogs.com/ericli-ericli/p/5902270.html 使用博客:h ...
- centos7 rabbitmq安装以及应用
安装单机rabbitmq 1.安装erlang cd /usr.local yum install wget yum install net-tools wget http://erlang.or ...
- SpringBoot非官方教程 | 第十五篇:Springboot整合RabbitMQ
转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot15-rabbitmq/ 本文出自方志朋的博客 这 ...
- SpringBoot整合RabbitMq(二)
本文序列化和添加package参考:https://www.jianshu.com/p/13fd9ff0648d RabbitMq安装 [root@topcheer ~]# docker ...
- 一、RabbitMQ安装与测试连接
一.下载NuGet支持的RabbitMQ.Client客户端库与安装RabbitMQ服务. 1.安装客户端库操作服务. 2.安装服务. 步骤一.下载Erlang. 步骤二.下载RabbitMQ服务 采 ...
- SpringBoot系列之自定义starter实践教程
SpringBoot系列之自定义starter实践教程 Springboot是有提供了很多starter的,starter翻译过来可以理解为场景启动器,所谓场景启动器配置了自动配置等等对应业务模块的一 ...
随机推荐
- JS (二)
]1 函数 1 函数就是一段待执行的代码段 2 函数可以实现功能的封装,可以实现代码的复用 3 函数使用: 1 函数声明 2 函数调用 4 语法: 1 函数声明 1 使用function关键字进行函数 ...
- [Agile][Scrum][敏捷开发][DevOps中的持续性测试]一些相关流程的梳理
结合相关资料,做一下梳理 1. 所有的计划任务都是从任务看板(backlog)开始 从backlog中可以看到燃尽图(burndown Chart)来监控项目的进度情况 一个好的看板能够清晰的观测到当 ...
- idou老师教你学Istio 16:如何用 Istio 实现微服务间的访问控制
摘要 使用 Istio 可以很方便地实现微服务间的访问控制.本文演示了使用 Denier 适配器实现拒绝访问,和 Listchecker 适配器实现黑白名单两种方法. 使用场景 有时需要对微服务间的相 ...
- Codeforces 348 D - Turtles
D - Turtles 思路: LGV 定理 (Lindström–Gessel–Viennot lemma) 从{\(a_1\),\(a_2\),...,\(a_n\)} 到 {\(b_1\),\( ...
- python+mysql:实现一千万条数据插入数据库
作业要求 构建一个关系模式和课本中的关系movies(title,year,length,movietype,studioname,producerC)一样的关系,名称自定,在这个关系中插入1000万 ...
- hive的shell用法(脑子糊涂了,对着脚本第一行是 #!/bin/sh 疯狂执行hive -f 结果报错)
hive脚本的执行方式 hive脚本的执行方式大致有三种: hive控制台执行: hive -e "SQL"执行: hive -f SQL文件执行:参考hive用法: usage: ...
- JAVA遇见HTML——JSP篇(1、JAVA WEB简介)
比如淘宝.新浪.搜狐.网易就是Web应用程序
- 6-修改虚拟机的SID(sysprep)
一.注意点 1.这种错误一般会出现在克隆的机器里,导致在加入域的时候,报SID一致,加入失败,如下图: 2.使用sysprep修改完之后,需要重启服务器,并且重新配置,重新配网络: 3.如果修改SID ...
- 简单的JAVAWeb选课系统
该系统管理员可以添加和删除学生.教师,教师可以修改自己信息.添加课程.浏览自己课程,学生可以修改自己的信息.选课.浏览全部课程. 首先展示文件: 然后就是一次展示代码: Guanli包中代码: pac ...
- C语言calloc()函数:分配内存空间并初始化——stm32中的应用
经常在代码中看到使用malloc来分配,然后memset清零,其实calloc更加方便,一句顶两句~ 头文件:#include <stdlib.h> calloc() 函数用来动态地分配内 ...