环境:腾讯云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安装与实践的更多相关文章

  1. 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 ...

  2. springboot之activemq安装与实践

    环境:腾讯云centos7 注意:activemq安装插件,可能会报错.本人是主机名的问题,所以修改了主机名. vim /etc/hosts vim /etc/hostname 修改这两个文件,并重启 ...

  3. SpringBoot(九)RabbitMQ安装及配置和使用,消息确认机制

    Windows下RabbitMQ安装及配置地址: https://blog.csdn.net/zhm3023/article/details/82217222RabbitMQ(四)订阅模式:https ...

  4. Spring-boot之 rabbitmq

    今天学习了下spring-boot接入rabbitmq. windows下的安装:https://www.cnblogs.com/ericli-ericli/p/5902270.html 使用博客:h ...

  5. centos7 rabbitmq安装以及应用

    安装单机rabbitmq   1.安装erlang cd /usr.local yum install wget yum install net-tools wget http://erlang.or ...

  6. SpringBoot非官方教程 | 第十五篇:Springboot整合RabbitMQ

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot15-rabbitmq/ 本文出自方志朋的博客 这 ...

  7. SpringBoot整合RabbitMq(二)

           本文序列化和添加package参考:https://www.jianshu.com/p/13fd9ff0648d RabbitMq安装 [root@topcheer ~]# docker ...

  8. 一、RabbitMQ安装与测试连接

    一.下载NuGet支持的RabbitMQ.Client客户端库与安装RabbitMQ服务. 1.安装客户端库操作服务. 2.安装服务. 步骤一.下载Erlang. 步骤二.下载RabbitMQ服务 采 ...

  9. SpringBoot系列之自定义starter实践教程

    SpringBoot系列之自定义starter实践教程 Springboot是有提供了很多starter的,starter翻译过来可以理解为场景启动器,所谓场景启动器配置了自动配置等等对应业务模块的一 ...

随机推荐

  1. Netty UDP 使用采坑

    使用Netty搭建UDP服务收集日志,使用过程中发现,部分日志接收不到,排查发现,都是大日志记录不到,后查询相关文档进行如下修改 EventLoopGroup workerGroup = new Ni ...

  2. ubuntu 14.04 登录 界面 root

    打开终端. sudo gedit /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 在弹出的编辑框里输入:greeter-show-manual-log ...

  3. Educational Codeforces Round 76 (Rated for Div. 2) D

    D题 原题链接 题意:就是给你n个怪兽有一个属性(攻击力),m个英雄,每个英雄有两种属性(分别为攻击力,和可攻击次数),当安排最好的情况下,最少的天数(每选择一个英雄出战就是一天) 思路:因为怪兽是不 ...

  4. Sonya and Exhibition

    http://codeforces.com/group/1EzrFFyOc0/contest/1004/problem/B #include<iostream> #include<c ...

  5. Java&Selenium自动化测试调用JS实现单击

    Java&Selenium自动化测试调用JS实现单击 /* * the method of invoking js to do something * * @author davieyang ...

  6. PHP程序员的技术成长规划(转载)

    按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...

  7. 按下开机键,Linux做了什么?

    作者:Vamei 来源:见文末 计算机开机是一个神秘的过程.我们只是按了开机键,就看到屏幕上的进度条或者一行行的输出,直到我们到达登录界面.然而,计算机开机又是个异常脆弱的过程,我们满心期望的登录界面 ...

  8. [转载]Appium工作原理

    [Appium]Appium工作原理 2017-09-13 15:28 sophia194910 阅读(7658) 评论(0) 编辑 收藏 参考:http://www.cnblogs.com/zhjs ...

  9. hbase实践之写流程拾遗

    keyvalue KeyValue中包含了丰富的自我描述信息: KeyValue是支撑"稀疏矩阵"设计的一个关键点:一些Key相同的任意数量的独立KeyValue就可以构成一行数据 ...

  10. 从package.json中获取属性

    var pjson = require('./package.json'); console.log(pjson.version); 详见:https://stackoverflow.com/ques ...