随笔分类 - rabbitmq
摘要:spring cloud stream整体架构核心概念图: 图一:消息的发送端和接收端可以是不同的中间件 图二: 图三:在消息的发送之前和消息的接收端套了一层管道 @Output:输出注释,用于定义发送消息接口 @Input:输入注解,用于定义消息的消费者接口 @StreamListener:用于定
阅读全文
摘要:导入pom.xml 配置生产者 第一步:配置application.properties 第二步:开发启动类Application.java 第三步:加入实体类order 第四步:开发消息发送方法 第五步:测试发送消息 配置消费者 第一步:配置application.properties 第二步:开
阅读全文
摘要:我们在进行发送消息的时候,正常情况下消息体为二进制的数据方式进行传输,如果希望内部帮我们进行转换,或者指定自定义的转换器,就需要用到MessageConverter 自定义常用转换器:MessageConverter,一般来讲都需要实现这个接口 重写下面两个方法: toMessage:java对象转
阅读全文
摘要:我们把之前的消息监听代码注释,可以不用直接加消息监听,而是采用MessageListenerAdapter的方式,我们来学习下如何使用默认的handleMessage,自定义方法名,自定义转换器。 适配器方式一: MessageListenerAdapter 可以通过适配器,适配自己的实现,这里我们
阅读全文
摘要:这个类非常强大,我们可以对他做很多设置,对于消费者的配置项,这个类都可以满足监听队列(多个队列)、自动启动、自动声明功能可以设置事务特性、事务管理器、事务属性、事务容量(并发)、是否开启事务、回滚消息等可以设置消费者数量、最大最小数量、批量消费设置消息确认和自动确认模式、是否重回队列、异常捕获han
阅读全文
摘要:RabbitTemplate是我们在与SpringAMQP整合的时候进行发送消息的关键类该类提供了丰富的发送消息的方法,包括可靠性消息投递、回调监听消息接口ConfirmCallback、返回值确认接口ReturnCallback等等同样我们需要注入到Spring容器中,然后直接使用。在与sprin
阅读全文
摘要:RabbitAdmin底层实现就是从Spring容器中获取Exchange、Binding、Routingkey以及Queue的@声明然后使用RabbitTemplate的execute方法执行对应的声明、修改、删除等一系列RabbitMQ基础功能操作例如添加一个交换机、删除一个绑定、清空一个队列里
阅读全文
摘要:使用场景 创建生产者 创建消费者 相关文章 RabbitMQ 消费端限流、TTL、死信队列
阅读全文
摘要:TTL概念 这与 Redis 中的过期时间概念类似。我们应该合理使用 TTL 技术,可以有效的处理过期垃圾消息,从而降低服务器的负载,最大化的发挥服务器的性能。 TTL是Time To Live的缩写,也就是生存时间。RabbitMQ支持消息的过期时间,在消息发送时可以进行指定。RabbitMQ支持
阅读全文
摘要:使用场景 具体方法 注意:prefetchSize和global这两项,rabbitmq没有实现,暂且不做研究,prefetchCount在自动应答的情况下是不生效的,必须进行手动签收 创建生产者 channel.close(); connection.close(); 创建消费者 相关文章: Ra
阅读全文
摘要:消息如何保证100%投递成功? 什么是生产端的可靠性投递? BAT互联网大厂的解决方案? 1.消息落库,对消息状态进行打标 2.消息的延迟投递,做二次确认,回调检查 优点是消息只持久化一次,对于数据量大的场景性能提升很大。 幂等性机制 海量订单如何避免重复消费问题?消费端实现幂等性,就意味着,即使我
阅读全文
摘要:引言 topic exchange和direct exchange类似,都是通过routing key和binding key进行匹配,不同的是topic exchange可以为routing key设置多重标准。 direct路由器类似于sql语句中的精确查询;topic 路由器有点类似于sql语
阅读全文
摘要:引言 它是一种完全按照routing key(路由关键字)进行投递的:当消息中的routing key和队列中的binding key完全匹配时,才进行会将消息投递到该队列中 1.模型 2.创建生产者 3.创建消费者1 4.创建消费者2 5.运行代码 通过路由键 routingKey 得到指定信息,
阅读全文
摘要:引言 它是一种通过广播方式发送消息的路由器,所有和exchange建立的绑定关系的队列都会接收到消息 不处理路由键,只需要简单的将队列绑定到交换机上 fanout交换机转发消息是最快的,它不需要做路由键的匹配 1.模型 2.Exchange Exchange在我们的工作模型中首次出现,因此需要详细介
阅读全文
摘要:1.模型 2.创建生产者 3.创建消费者1 4.创建消费者2 5.运行代码 预期结果: 按照延迟加载时间获取消息数量不同,数量比例为 延时1:延时2 测试结果如下: 1.两个消费者先启动完成,再启动生产者,这时会采用轮询分发的方式,消费者1和消费者2各拿到一半的消息 2.生产者先启动完成,消费者按照
阅读全文
摘要:Virtual host-虚拟主机 1.simple queue模型 2.创建一个连接工具类 3.创建生产者 注:此时未指定exchange,所以该队列绑定的是rabbitmq提供的默认的exchange 即: 此时的exchange类型是direct(直连)方式 4.创建消费者 5.运行代码 su
阅读全文
摘要:1.开发工具 apache-maven-3.5.3 jdk1.8 Eclipse 4.12.0 2.开发环境 创建一个简单的meaven项目,pom文件如下: 3.使用管控平台创建一个 用户 4.使用管控平台创建一个 Virtual host(虚拟主机) 5.给用户设置访问虚拟主机权限 给用户设置权
阅读全文
摘要:一、初识RabbitMQ 百度百科有这么一句话: 他的官网中用大大的黑粗字体写着: 由此可见,RabbitMQ是一个消息中间件,生产者生成消息,消费者消费消息,它遵循AMQP(高级消息队列协议),是最广泛部署的开源消息代理。 另外,RabbitMQ是用Erlang语言实现的,它有几个概念: 二、安装
阅读全文
摘要:参考视频:白鹤翔_rabbitmq全面解析【史上最佳】 MQ:消息队列 MQ的衡量指标:服务性能、数据的存储、集群架构 1.ActiveMQ 一、介绍 1.ActiveMQ是Apache出品的,最流行的开源消息总线,是一种完全支持JMS规范的消息中间件 2.其丰富的api、多种集群架构模式使得它成为
阅读全文

浙公网安备 33010602011771号