RabbitMQ 知识小结

MQ是什么?

	消息队列

MQ的优缺点?

	优:
		应用解耦 -->降低程序之间的相互依赖
		异步提速 --> 异步提速针对的是消息的生产者来说的,对整个整体业务花费的时间其实是增多的
		削峰填谷 --> 将峰值平均进行消费
	缺:
		系统的可用性降低 --> 如果MQ宕机整个系统都无法正常运行了
		复杂度提升 --> 因为要学习MQ
		一致性降低 --> 使用MQ后,消息存放在MQ中.消费者从MQ中国获取消息进行消费,
						那么当消费失败后,就会出现不一致的情况

MQ的实现都有哪些?

	ActiveMQ: java
	RabbitMQ: erlang
	RocketMQ: 阿里的产品
	Kafka: 大数据消息中间件
	ZeroMQ: 效率最高的MQ,但是实现最复杂
	Redis: 也可以实现消息中间件

RabbitMQ的概念?

	AMQP协议 类似于http协议,不收语言的限制

RabbitMQ的体系结构?

	producer 
	connection 
	channel
	broker
	Exchange
	Queue
	routingKey
	Binding
	consumer

RabbitMQ的安装?

RabbitMQ的开发

	JAVA的API 、 Spring整合 、SpringBoot整合

RabbitMQ的工作模式

	五种消息模式
		
	简单模式
	工作队列模式
	发布订阅模式
	路由模式
	通配符模式

RabbitMQ的消息可靠投递

	confirms --> 交换机没有正确接收到消息
	returns -->  队列没有正确接收到消息
	ack --> 消费者眉头正确接收到消息

RabbitMQ的限流

RabbitMQ的TTL

	TTL 全称: Time To Live (存活时间/过期时间) 当消息到达存活时间后,还没有被消费,会被自动清除
RabbitMQ的死信队列
	死信队列 英文缩写: DLX  当消息成为Dead message 后,可以被重新发送到另一个交换机,这个交换机就是DLX
	
	消息成为死信的三种情况:
		1. 队列消息长度达到限制
		2.消费者拒绝接受消费信息,并且不把消息重新放入原来的目标队列.
		3.员队列消息过期,未被消费.

RabbitMQ的延迟队列

	消息进入队列后不会立即被消费,只有达到指定时间后,才会被消费.
	
	注意:	在RabbitMQ中并未提供延迟队列功能。
			但是可以使用:TTL+死信队列  组合实现延迟队列的效果。

RabbitMQ的消息补偿

	确保所有的消息都要被消费

RabbitMQ的幂等性

	同一个消息不管被消费多少次和消费一次的结果必须要一致。
	
RabbitMQ的日志、消息追踪、集群搭建、haproxy
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值