RabbitMQ
coding的大博哥
做一个牛逼的人,不问世事……
展开
-
RabbitMQ如何保证消息的可靠性
一:介绍消息的可靠传输一般是指业务系统接入消息中间件时需要考虑的问题。二:消息传输示意图三:消息可能丢失的几种情况(1)、消息从生产者传输到中间件的过程中,可能网络断开,消息丢失;(2)、消息到达中间件的交换器后,路由不到匹配的队列中,消息丢失;(3)、消息在队列中还未被消费者消费时,中间件服务器宕机,消息丢失;(4)、消息从队列传输到消费者的过程中,可能网络断开,...原创 2020-04-22 23:57:13 · 324 阅读 · 0 评论 -
RabbitMQ的延迟队列
一:介绍延迟队列中存放的是延迟消息,所谓的“延迟消息”就是指当消息发送后,并不能被消费者立即消费,而是等待特定时间后,消费者才能拿到这个消息进行消费。二:原理RabbitMQ并没有直接提供对应的延迟队列,而是通过DLX(死信交换器)和TTL(消息过期时间)来达到延迟队列的目的。假如需要一个延迟1min的延迟队列,则可以将一个队列的过期时间设置为1min,并给该队列设置DLX(死信交...原创 2020-04-21 22:16:49 · 179 阅读 · 0 评论 -
RabbitMQ的死信队列
RabbitMQ的死信队列为什么需要死信队列?消息什么时候加入死信队列?有什么作用?原创 2020-04-21 13:32:02 · 282 阅读 · 0 评论 -
RabbitMQ的备份交换器
什么时候需要备份交换器?备份对列中的消息什么时候取出来?原创 2020-04-21 11:31:47 · 228 阅读 · 0 评论 -
RabbitMQ的整个通信过程
一:根据上图标注的序号来依次介绍每一步要做的事情:1:生产者生产消息后,将消息发布给交换器黑EX;2:交换器黑EX根据路由规则将消息路由到队列黑queue;3:Broker再将队列黑queue中的消息投递给订阅该队列的消费者,或者是消费者从队列黑queue中获取消息;4:给黑EX绑定一个备份交换器绿EX,当到达黑EX的消息不能被正确路由到任何队列时,被发送给备份交换器绿EX;...原创 2020-04-21 10:26:38 · 342 阅读 · 0 评论 -
RabbitMQ消费消息的两种模式:推和拉
前言 在rabbitmq中有两种消息处理的模式,一种是推模式/订阅模式/投递模式(也叫push模式),消费者调用channel.basicConsume方法订阅队列后,由RabbitMQ主动将消息推送给订阅队列的消费者;另一种是拉模式/检索模式(也叫pull模式),需要消费者调用channel.basicGet方法,主动从指定队列中拉取消息。推模式:消息中间件主动将消息推送给消...原创 2020-04-10 11:33:05 · 11565 阅读 · 2 评论 -
对RabbitMQ消息队列的理解
一、RabbitMQ的消费模式有两种,一种是推,一种是拉推:RabbitMQ会将队列中的消息推给消费者。拉:消费者从队列中主动拉取消息,但是每次只能拉取一条。二:消息确认当消费者无论通过推模式还是拉模式消费消息后,都应该给RabbitMQ一个确认消息,告诉RabbitMQ自己已经消费了消息,让RabbitMQ从队列中将消息删除;当然了消费者也可以不给RabbitMQ回复确认消息,这...原创 2020-03-25 18:49:14 · 612 阅读 · 0 评论