Rabbitmq 整合Spring,SpringBoot与Docker
SpringBootLearning是对Springboot与其他框架学习与研究项目,是根据实际项目的形式对进行配置与处理,欢迎star与fork。
[oschina 地址]
http://git.oschina.net/cmlbeliever/SpringBootLearning
[github 地址]
https://github.com/cmlbeliever/SpringBootLearning
最近开始研究消息队列框架Rabbitmq,之前对消息队列只是有个基本概念而已。至于使用场景也局限于发送邮件,发送系统消息等。
既然开始学习了,首先上官网把基本概念撸清除后,再看看Spring官方整合文档AMQP,基本上摸清了套路。
项目开始前的准备:
工欲善其事必先利其器,首先得安装Rabbitmq。这里推荐使用docker进行安装。
1. 获取镜像: docker pull rabbitmq:management
2. 执行命令 docker run -d --name rabbitmq --publish 5671:5671 \ --publish 5672:5672 --publish 4369:4369 --publish 25672:25672 --publish 15671:15671 --publish 15672:15672 \rabbitmq:management
3. 查看docker容器ip:docker-machine ip
4. 根据获取的ip,在浏览器上访问:http://${ip}:15672 打开管理页面,则说明rabbitmq安装成功
安装好Rabbitmq后,将SpringBootLearning工程clone下来
git clone https://git.oschina.net/cmlbeliever/SpringBootLearning.git
或
git clone https://github.com/cmlbeliever/SpringBootLearning.git
项目是放在两个git托管服务上的,因为github有的时候会访问失败,所以就加了一个国内的托管服务。
工程clone下来后,进入到rabbitmq目录。根据README上的说明进行操作即可。
Spring的配置文件分成发送端和接收端配置。发送端负责发送特定的消息,接收端负责接收不同quene下的消息进行相应的处理,工程上只是log出来了。
目前集成了Exchagne类型有topic,fanout,direct。还添加了手动确认消息的demo。
工程运行成功后,可以看到执行后接收到消息的log:
至于配置,工程上都有。每个配置的意义,官网上说的很详细了,网上其他人博客也说的很多了,这里就不赘述了。
Rabbitmq 整合Spring,SpringBoot与Docker的更多相关文章
- 消息中间件——RabbitMQ(九)RabbitMQ整合Spring AMQP实战!(全)
前言 1. AMQP 核心组件 RabbitAdmin SpringAMQP声明 RabbitTemplate SimpleMessageListenerContainer MessageListen ...
- RabbitMQ学习笔记(5)----RabbitMQ整合Spring
在Spring AMQP项目中Spring也提供了对RabbitMQ的支持,这里在之前学习SpringBoot的时候也整合过,但是今天这里使用的Spring的xml配置来整个rabbit. Sprin ...
- RabbitMQ整合Spring Booot【消费者补偿幂等问题】
如果消费者 运行时候 报错了 package com.toov5.msg.SMS; import org.springframework.amqp.rabbit.annotation.RabbitHa ...
- RabbitMQ整合spring
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- RabbitMQ整合Spring Booot【消费者应答模式】
生产者代码不变,消费者: package com.toov5.Consumer; import java.io.IOException; import java.util.concurrent.Tim ...
- RabbitMQ整合Spring Booot【点对点模式】
pom.xml: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www. ...
- RabbitMQ整合Spring Booot【Exchange-Fanout模式】
pom: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.o ...
- 消息中间件——RabbitMQ(十)RabbitMQ整合SpringBoot实战!(全)
前言 1. SpringBoot整合配置详解 publisher-confirms,实现一个监听器用于监听Broker端给我们返回的确认请求:RabbitTemplate.ConfirmCallbac ...
- 关于RabbitMQ以及RabbitMQ和Spring的整合
转自:https://www.cnblogs.com/s648667069/p/6401463.html 基本概念 RabbitMQ是流行的开源消息队列系统,用erlang语言开发.RabbitMQ是 ...
随机推荐
- async 和 await 例子
/// <summary> /// C# 5.0 /// .net framework4.5 /// CLR4.0 /// 引入了async 和 await.这两个关键字可以让你更方便的写 ...
- 分析PE
PE文件是Windows平台下可执行文件标准格式,浓缩了微软工程师的设计精华,历经40年依旧保持着原有的设计.分析PE文件对于研究Windows操作系统有着重要的实践意义,对于逆向分析有着重要的指导作 ...
- python学习笔记(二)---for循环与操作列表
内容概要 for循环 range(start,end,step)函数 生成随机数列表 list()函数 将range()的结果整合到某个列表 列表的操作 切片(start: end :step) 元组 ...
- Linux源码安装步骤
来源:https://www.cnblogs.com/benwu/articles/8436209.html 1. 获取源码 2. 查看INSTALL与README文件 (解压后查看INSTAL ...
- PHP 把MYSQL重复ID 二维数组重组为三维数组
应用场景 MYSQL在使用关联查询时,比如 产品表 与 产品图片表关联,一个产品多张产品图片,关联查询结果如下: $arr=[['id'=>1,'img'=>'img1'],['id'=& ...
- webpack4 图片加载
图片处理(file-loader) 引用时出现的问题 在js中引入图片并添加到页面 let img = new Image(); img.src = './logo.png' document.bod ...
- (第四篇)Linux命令初识之常用系统管理命令
1.hostname [命令作用]用于显示和设置系统的主机名称(但是不会永久保存,重启后会恢复) [命令语法]hostname(选项)(参数) [常用选项] -a:显示主机别名(alias name) ...
- Shutdown SpringBoot App
文章目录 Shutdown Endpoint close Application Context 退出SpringApplication 从外部程序kill App Shutdown SpringBo ...
- 关于Python的JSON
1.json模块load/loads.dump/dumps区别:(摘自这里) 实际上json就是python字典的字符串表示,但是字典作为一个复杂对象是无法直接转换成定义它的代码的字符串,python ...
- 数学--数论-- HDU 2601 An easy problem(约束和)
Problem Description When Teddy was a child , he was always thinking about some simple math problems ...