解耦场景
- spark 发告警,同过kafka来解耦
削峰场景
- 日志采集生产环境几百台,当后续数量持续增加时,如果不加消息队列或者内存队列,可能把数据库打死
一个中间件:
- 为什么用 -》解决什么问题
- 有什么作用,优点和缺点
- 是否横向对比
为什么用 -> 解决什么问题 -> 有什么作用 -> 优缺点
为什么用 -> 遇到问题/场景-> 比较 -> 优缺点
场景 = 问题
高可用 -> 数据冗余
消息可靠传输出现问题的环节
生产者
- 确认机制
MQ
- 副本
- 持久化
消费者
- offset、想mq确认
顺序一致性:
生产者
- 消息按照key划分成多个队列,每个队列一个生产者,单线程发送,每确认成功一条后,再发送第二条
MQ:
- 消息按照key划分成多个队列,key相同的消息进入一个队列
消费者
- 消息按照key划分成多个队列,每个队列一个消费者,单线程消费,每确认成功一条后,再消费第二条