kafka消息队列的优化

kafka

​ 消息队列,内是列表,列表的每个节点就是消息,有序号,offset指代

对于消息队列的优化

1.高性能:

(1)对消息进行分类,每一类是一个topic topic1,topic2......,增加多个消费者,生产者

(2)生产者将数据按照topic 投递到不同的队列中
消费者根据需要订阅不同的topic
这样就降低了topic队列的压力

(3)可以将单个topic队列拆分成好几段,每段就是一个partition,有partition1,partition2.......
有多个消费者,每个消费者负责一个partition分区

2.高扩展性:

​ 每个partition都在同一台机器上会导致单个机器cpu内存过高,将每个partition分配到多个机器上,
​ 每一台机器就代表一个broker

3.高可用:

​ 为了防止broker损坏,再给每个partitiion加副本,称为replicas , p1叫leader,p1副本叫follower
​ leader负责读写,follower负责同步p1的消息,再将p1,p2分散到不同的broker上面

4.持久化和过期策略:

​ 再将所有的broker增加保留策略 (retention policy),定期清除。然后存储到磁盘上,保证磁盘不会超载

5.消费者组consumer group

​ 新增的消费者不会直接跟着最新的offset消费,可从某个offset开始消费 ,消费者组consumer group,每个

​ 消费者消费自己的partiittion进度胡不打搅

6.维护

​ 加入zookeeper管理broker

posted on 2024-07-31 17:24  By远方  阅读(9)  评论(0编辑  收藏  举报