![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
rabbitMQ
zglx123
这个作者很懒,什么都没留下…
展开
-
RabbitMQ实战之(六)死信队列实战
死信队列死信队列概述死信队列间接和作用典型的应用场景介绍代码实战死信队列专有名词介绍死信队列消息模型队列和交换机初始化死信队列的接收和发送死信队列概述延迟、延迟指定业务的逻辑,在实际生活中比较常见,比如超时未处理订单关闭,本章以商城平台订单为支付超时,掌握如何在死信队列模型的消息延迟发送。在之前的消息模型中,都有一个共同的特点,就是消息一到队列,就立马被消费者消费了,所以死信队列的初衷就是为了解决这个问题,希望能延迟一定的时间给消费者处理。死信队列间接和作用传统的业务处理是使用定时器轮训的方式处理原创 2020-09-05 23:50:27 · 424 阅读 · 0 评论 -
RabbitMQ实战之(五)用户操作成功写日志
本章以用户登录成功写日志,总结前述知识点,这里采用以下AOP切面编程用户登录成功写日志整体业务流程分析数据库设计交换机队列声明整体业务流程分析主要分为两大模块,“用户登录模块”,“日志模块”,两大模块相互独立,互不干扰,日志模块应当异步于登录模块执行数据库设计CREATE TABLE user ( id int(11) NOT NULL AUTO_INCREMENT COMMENT '用户id', user_name varchar(255) NOT NULL COMMENT '用户名',原创 2020-09-05 21:50:32 · 490 阅读 · 0 评论 -
Rabbit实战之(四)消息确认消费机制
消息确认消费机制消息高可用和确认消费常见消息确认模式介绍基于自动模式消费确认基于手动模式确认消息高可用和确认消费RabbitMQ在实际使用过程中,如果配置或使用不当,则会出现令人头疼的问题,下面列举三个不知道发送的消息是否成功,生产者将消息发送出去,但是如果消息模型不存在,队列不存在,就是发送失败的,这一点作为生产者要知道解决方案RabbitMQ会要求生产者在发送完信息后,进行发送确认,当成功就代表消息成功的发送出去,在配置文件中 @Bean public RabbitTempla原创 2020-09-05 00:09:45 · 732 阅读 · 0 评论 -
RabbitMQ之(三)多种消息模型实战
多种消息模型基于FanoutExchange的消息模型实战基于DirectExchange的消息模型实战基于TopicExchange的消息模型实战在RabbitMQ的核心组件交换机中有4种典型的消息模式,即HeadersExchange,FanoutExchange,DirectExchange ,TopicExchange的四种模式,生产环境中,常用后面三种。本节将讲述下面几种基于FanoutExchange的消息模型实战FanoutExchange具有广播的作用,当消息进入这个中转站的时候,原创 2020-09-04 20:27:25 · 274 阅读 · 0 评论 -
RabbitMq实战之(二)springboot整合RabbitMQ
RabbitMQ相关组件SpringBoot整合RabbitMQ自定义配置Bean相关组件RabbitMQ发送消息和接收消息其他发送和接收消息方式实战相关组件生产者:用于发送消息消费者:用于监听、接收、消费和处理消息消息:可以看做是实际数据,在底层架构中是通过二进制的数据进行保存的队列:指的是消息的暂存区和存储区,可以看做是一个中转站,消息经过这个中转站,便到了消费者手中。交换机:同样也是消息的中转站,用于首次接收和分发消息,其中包括Fanout,Direct和Topic,Headers路由:原创 2020-09-04 15:38:34 · 173 阅读 · 0 评论 -
RabbitMq实战之(一)介绍原理
RabbitMQ概述典型的应用场景介绍异步通信和服务解耦接口限流和消息分发延迟处理基于Spring的事件驱动模型实战概述redis的主要作用是提升高并发请求下的查询性能,减少查询数据库的次数,从而减轻数据库的压力。但是随着流量的增长,传统应用在系统接口和服务处理模块层面仍然是高耦合,同步的处理方式,导致了接口由于线程堵塞而延长了整体的响应性能,即产生了高延迟。RabbitMQ就是为了解决这一问题使用领域,服务模块解耦,异步通信,高并发限流,超时服务,数据延迟处理等。这些内容在下面会有提及典型的原创 2020-09-03 22:39:28 · 216 阅读 · 0 评论 -
RabbitMQ之(延迟队列)
什么是延时队列,延时队列应用于什么场景延时队列顾名思义,即放置在该队列里面的消息是不需要立即消费的,而是等待一段时间之后取出消费。那么,为什么需要延迟消费呢?我们来看以下的场景网上商城下订单后30分钟后没有完成支付,取消订单(如:淘宝、去哪儿网)系统创建了预约之后,需要在预约时间到达前一小时提醒被预约的双方参会系统中的业务失败之后,需要重试RabbitMQ的Queue可以配置x-dead-letter-exchange和x-dead-letter-routing-key(可选)两个参数,如果队列原创 2020-08-07 23:08:15 · 228 阅读 · 0 评论 -
RabbitMQ
1. RabbitMQ介绍1.1 引言市面上比较火的几种MQActiveMQ,RocketMQ,Kafka,RabbitMQ1.语言的支持: ActiveMQ,RocketMQ只支持Java,Kafka,RabbitMQ支持多种语言2.效率方面:ActiveMQ,RocketMQ,Kafka都是毫秒级别的,RabbitMQ是微秒级别的3.消息丢失、消息重复问题:RabbitMQ针对消息的持久化,和重复问题都有成熟的解决方案4.学习成本:RabbitMQ非常简单RabbitMQ是由Rabb原创 2020-08-07 15:49:29 · 134 阅读 · 0 评论