设计MQ的思路
摘要:分布式 首先这个mq得支持可伸缩性吧,就是需要的时候快速扩容,就可以增加吞吐量和容量,那怎么搞?设计一个分布式系统,参照一下kafka的设计理念,broker->topic->pratition,每个partition放一个机器,就存一部分数据。如果现在资源不够了,简单呀,给topic增加parti
阅读全文
posted @
2021-11-11 11:06
公众号/架构师与哈苏
阅读(61)
推荐(0) 编辑
消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?大量消息持续积压几个小时,怎么办?
摘要:消息积压处理办法1:临时紧急扩容 先修复consumer的问题,确保其恢复消费速度,然后将现有consumer都停掉。新建一个topic,partition是原来的10倍,临时建立好原先10倍的queue数量。然后写一个临时的分发数据的consumer程序,这个程序部署上去消费积压的数据,消费之后不
阅读全文
posted @
2021-11-11 10:40
公众号/架构师与哈苏
阅读(330)
推荐(0) 编辑
kafka数据丢失的场景
摘要:消费者弄丢数据 唯一可能导致消费者弄丢数据的情况,就是说,你那个消费到了这个消息,然后消费者那边自动提交了offset,让kafka以为你已经消费好了这个消息,其实你刚准备处理这个消息,你还没处理,你自己就挂了,此时这条消息就丢咯。 这不是一样么,大家都知道kafka会自动提交offset,那么只要
阅读全文
posted @
2021-11-10 15:40
公众号/架构师与哈苏
阅读(158)
推荐(0) 编辑
kafka高可用(集群)
摘要:kafka的分布式和高可用 kafka的一个基本架构:多个broker组成,一个broker是一个节点;你创建一个topic,这个topic可以划分成多个partition,每个parttition可以存在于不同的broker上面,每个partition存放一部分数据。这是天然的分布式消息队列。 实
阅读全文
posted @
2021-11-10 09:40
公众号/架构师与哈苏
阅读(186)
推荐(0) 编辑