RabbitMQ

66 阅读1分钟

一.中间件技术

1.分布式消息中间件

I.技术

II.场景

III.遵循的协议

image.png

2.其他中间件

image.png

二.为什么用消息中间件

为了负责数据的传递,存储,分发消费

三.消息队列是什么

1.消息队列协议

I.为什么不直接用http

image.png image.png

II.消息中间件用哪个协议

i. AMQP协议

image.png

ii.MQTT协议

image.png

2.消息队列持久化

image.png image.png

3.消息队列分发策略

image.png image.png

image.png

image.png

4.消息队列的高可用和高可靠

I.高可用

image.png

image.png

image.png

image.png

image.png image.png

II.高可靠

image.png

四.MQ概述

简称消息队列,是在消息传输的过程中保存消息的容器;
多用于分布式系统之间的通信(多分布系统之间的调用可以通过远程直接调用,或者使用第三方容器如mq间接通信)




五.为什么用MQ

1.优点

I.应用解耦(提高系统的容错性和可维护性)

image.png

image.png

II.异步提速 (提升用户体验和系统吞吐量)

image.png

image.png

III.削峰填谷(提高系统的稳定性)

image.png

image.png

2.缺点

I.系统复杂性提高

image.png

II.系统可用性降低

image.png

III.一致性问题

image.png

六.rabbitmq概述

1.生产者与消费者入门

2.rabbit工作模式

工作模式指的就是消息分发的一种路由方式

image.png

image.png

七.rabbit使用

1.spring整合rabbitmq

2.springboot整合rabbitmq

image.png

八.rabbit高级

1.高级特性

image.png

I.消息可靠性投递

image.png

II.consumer ack

image.png

image.png

III.消费端限流

image.png

image.png

IV.TTL

image.png

image.png

V.死信队列

image.png image.png image.png

VI.延迟队列

image.png image.png

VII.日志与监控

image.png

VIII.消息追踪

image.png image.png

2.应用问题

I.消息可靠性保障

image.png image.png

II.消息幂等性保障

image.png image.png

3.集群搭建