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翻译过来可以理解为场景启动器,所谓场景启动器配置了自动配置等等对应业务模块的一 ...
随机推荐
- IDEA部署项目到远程服务器
一.idea安装阿里插件Alibaba Cloud Toolkit 二.添加Host 三.应用部署 四.修改源程序重新部署 五.查看实时日志 欲买桂花同载酒,终不似,少年游
- ES extended_stats 函数
在进行ES聚合分析的时候,发现了一个非常有用的函数,extended_stats,可以对聚合的结果进行更近一步的分析 ,常见的 count sum avg min max 等都可以一目了然 GET ...
- docker安装redis并以配置文件方式启动
镜像相关 redis镜像 # 不限定版本 docker pull redis # 拉取 redis为4.0.9版本的镜像 docker pull redis:4.0.9 # 拉取之后查看镜像 dock ...
- 通过字节码分析Java方法的静态分派与动态分派机制
在上一次[https://www.cnblogs.com/webor2006/p/9723289.html]中已经对Java方法的静态分派在字节码中的表现了,也就是方法重载其实是一种静态分派的体现,这 ...
- python cmd 窗口 中文乱码 解决方法 (附:打印不同颜色)
python cmd 窗口 中文乱码 解决方法 (附:打印不同颜色) 前言 在 python 开发中,有时候想通过cmd窗口来和用户交互,比如显示信息之类的,会比自己创建 GUI 来的方便,但是随之而 ...
- MySQL内存结构
实际上MySQL内存的组成和Oracle类似,也可以分为SGA(系统全局区)和PGA(程序缓存区). mysql>show variables like "%buffer%" ...
- jQuery于js的区别和联系
一.什么是jQuery jQuery 是 js 的一个库,封装了我们开发过程中常用的一些功能,方便我们调用,提高开发效率. js库是把我们常用的功能放到一个单独的文件中,我们用的时候,直接引用到页面里 ...
- 10 | MySQL为什么有时候会选错索引?
前面我们介绍过索引,你已经知道了在MySQL中一张表其实是可以支持多个索引的.但是,你写SQL语句的时候,并没有主动指定使用哪个索引.也就是说,使用哪个索引是由MySQL来确定的. 不知道你有没有碰到 ...
- [洛谷201704R1]开心派对小火车
OJ题号:洛谷P3697 思路: 贪心.首先从起点出发,开特急电车,对于每一个特急车站$s_{i}$,分别下一次车,计算从当前车站$s_{i}$出发坐各停电车在指定时限内$t$最远能够到达的车站$r_ ...
- SPOJ GSS1 - Can you answer these queries I(线段树维护GSS)
Can you answer these queries I SPOJ - GSS1 You are given a sequence A[1], A[2], -, A[N] . ( |A[i]| ≤ ...