RabbitMQ从安装到使用
一.在Linux中安装RabbitMQ
通过Docker安装:
获取镜像(选用management是带有管理界面的)
docker pull rabbitmq:3.7.-management
查看下载好的镜像:docker images
运行镜像:
docker run -d -p 5672:5672 -p 15672:15672 --name myrabbitmq 镜像ID
打开端口号或关闭防火墙就可以远程访问其管理界面了,如下所示

默认账号密码都是guest,登录后页面如图所示:

创建exchange:(exchange的作用是接收消息,并把消息放入队列中)

创建queue:

exchange绑定queue:

exchange给队列发送消息案例

点击发送后,刷新queue,发现queue中多了一条消息

再点进去后可以查看具体内容

二.SpringBoot整合RabbitMQ
1.引入RabbitMQ依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
2.配置RabbitMQ
spring.rabbitmq.host=192.168.2.129
#这里设置的端口是5672而不是15672
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
3.使用RabbitMQ
发送消息:
@Autowired
RabbitTemplate rabbitTemplate;
@Test
public void test1() {
String str = "你好";
rabbitTemplate.convertAndSend("amq.direct", "myqueue" , str);//第一个参数是交换器,第二参数是判断发送到哪个队列而制定的规则,第三个是发送消息的内容(注意,交换器需要绑定队列)
}
获取消息:
@Test
public void test2() {
Object myqueue = rabbitTemplate.receiveAndConvert("myqueue");//这里放的是队列的名字,一次获取一条消息,获取后,队列中的消息将会删除
System.out.println(myqueue);
}
使用代码创建exchange和queue:
@Autowired
AmqpAdmin amqpAdmin;
@Test
public void test3(){
//创建exchange
amqpAdmin.declareExchange(new DirectExchange("test.exchange" , false , true));//exchange名称,是否持久化 ,是否自动删除,还可以添加参数类型
//创建queue
amqpAdmin.declareQueue(new Queue("testqueue" , false));//queue名称,是否持久化,还可以添加是否自动删除,参数类型等
//创建绑定以及设置通信规则
amqpAdmin.declareBinding(new Binding("testqueue",Binding.DestinationType.QUEUE,"test.exchange","test",null));//绑定的名称,绑定类型,绑定的exchange,给队列发送消息的规则,参数
}
使用代码删除exchange和queue:

RabbitMQ从安装到使用的更多相关文章
- RabbitMQ服务安装配置
RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发.RabbitMQ据说具有良 ...
- Erlang&RabbitMQ服务安装配置
RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发.RabbitMQ据说具有良 ...
- rabbitMQ第一篇:rabbitMQ的安装和配置
在Windows下进行rabbitMQ的安装 第一步:软件安装 如果安装rabbitMQ首先安装基于erlang语言支持的OTP软件,然后在下载rabbitMQ软件进行安装(安装过程都是下一步,在此不 ...
- Linux下 RabbitMQ的安装与配置-3
一 Erlang安装 1.RabbitMQ是基于Erlang的,所以首先必须配置Erlang环境. 从Erlang的官网http://www.erlang.org/download.html 下载最 ...
- 【linux环境下】RabbitMq的安装和监控插件安装
[注意安装过程中,提示某些命令not found,直接yum isntall一下就好了] 以下是我在CentOS release 6.4下亲测成功的. RabbitMq的安装: RabbitMQ是 ...
- 【windows环境下】RabbitMq的安装和监控插件安装
RabbitMq的安装: RabbitMQ是基于Erlang的,所以必须先配置Erlang环境. 下载Erlang,地址:http://www.erlang.org/download/otp_win3 ...
- gcc, numpy, rabbitmq等安装升级总结
1. 公司在下面目录安装了gcc-4.8.2,以支持c++11,可以通过在bashrc中添加来实现: PATH=/opt/compiler/gcc-4.8.2/bin:$PATH 2. 公司环境切换到 ...
- Linux下 RabbitMQ的安装与配置
以下教程摘录自互联网并做了适当修改,测试的rabbitmq 版本为:rabbitmq-server-generic-unix-3.5.6 各版本之间会有差异!!! 一 Erlang安装 Rabbit ...
- Linux rabbitmq的安装和安装amqp的php插件
RabbitMQ是一个消息代理.它的核心原理非常简单:接收和发送消息.你可以把它想像成一个邮局:你把信件放入邮箱,邮递员就会把信件投递到你的收件人处.在这个比喻中,RabbitMQ是一个邮箱.邮局.邮 ...
- RabbitMQ windows安装官方文档翻译!
RabbitMQ Windows安装和配置 下载地址 官网windows下载地址: http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/r ...
随机推荐
- 微信小程序底部菜单栏的使用方法
1.找到项目根目录的配置文件 app.json,在配置文件中加入配置代码.例如: "tabBar": { <!--底部的导航配置属性--> "color&qu ...
- 2018092609-2 选题 Scrum立会报告+燃尽图 04
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/8682 一.小组情况组长:贺敬文组员:彭思雨 王志文 位军营 杨萍队名:胜 ...
- Uep的ajaxform和ajaxgrid组件获取数据源
对于ajaxform组件var record = ajaxform.getRecord();var storeId = record.get("storeId");var stor ...
- windos 启动redis服务端与客户端
服务端:1-win+R 打开命令行2-cd至redis目录,例如 G:\Redis63813-输入 redis-server.exe redis.windows.conf观察是否如图1:至此,已成功: ...
- LeetCode 409——最长回文串
1. 题目 2. 解答 我们先来看一看回文子串的规律,如果回文子串的长度为偶数,那么其中所有的每个元素都出现了偶数次:如果回文子串的长度为奇数,那么有一个元素出现了奇数次而其余每个元素都出现了偶数次. ...
- LeetCode 5——最长回文子串
1. 题目 2. 解答 我们定义状态 state[i][j] 表示子串 s[i, j] 是否为回文子串,如果 s[i, j] 为回文子串,并且有 s[i-1] == s[j+1],那么 s[i-1, ...
- 【flask】处理表单数据
表单数据的处理涉及很多内容,除去表单提交不说,从获取数据到保存数据大致会经历以下步骤: 解析请求,获取表单数据. 对数据进行必要的转换,比如将勾选框的植转换为Python的布尔值. 验证数据是否符合 ...
- vue中关于checkbox数据绑定v-model指令的个人理解
vue.js为开发者提供了很多便利的指令,其中v-model用于表单的数据绑定很常见, 下面是最常见的例子: <div id='myApp'> <input type=&qu ...
- 微信小程序UI学习
1.大纲: 2.flex的布局: 3.相对定位和绝对定位: position: relative 相对定位 position: absolute 绝对定位
- Autumn is deep, alas! I stand on the grass in the shadow of the evergreen trees.
essence. n. 本质 flush.n. 脸红 v. 刷洗 initiate.v.开始 intrinsic.固执的 mainfest.a.显然的 intuition.n.直觉上的 refrain ...