摘要: zookeeper 是一个分布式的协调组件,早期版本的kafka用zk做meta信息存储,consumer的消费状态,group的管理以及 offset的值。考虑到zk本身的一些因素以及整个架构较大概率存在单点问题,新版本中逐渐弱化了zookeeper的作用。新的consumer使用了kafka内部 阅读全文
posted @ 2020-05-25 23:31 咔啡 阅读(6154) 评论(0) 推荐(0)
摘要: broker 是消息的代理,Producers往Brokers里面的指定Topic中写消息,Consumers从Brokers里面拉取指定Topic的消息,然后进行业务处理,broker在中间起到一个代理保存消息的中转站。 阅读全文
posted @ 2020-05-25 23:03 咔啡 阅读(11842) 评论(1) 推荐(2)
摘要: leader会维护一个与其基本保持同步的Replica列表,该列表称为ISR(in-sync Replica),每个Partition都会有一个ISR,而且是由leader动态维护 ,如果一个follower比一个leader落后太多,或者超过一定时间未发起数据复制请求,则leader将其重ISR中 阅读全文
posted @ 2020-05-25 17:47 咔啡 阅读(503) 评论(0) 推荐(0)
摘要: Kafka的复制机制既不是完全的同步复制,也不是单纯的异步复制。完全同步复制要求All Alive Follower都复制完,这条消息才会被认为commit,这种复制方式极大的影响了吞吐率。而异步复制方式下,Follower异步的从Leader复制数据,数据只要被Leader写入log就被认为已经c 阅读全文
posted @ 2020-05-25 14:24 咔啡 阅读(1897) 评论(0) 推荐(0)
摘要: unclean.leader.election.enable 为true的话,意味着非ISR集合的broker 也可以参与选举,这样有可能就会丢数据,spark streaming在消费过程中拿到的 end offset 会突然变小,导致 spark streaming job挂掉。如果unclea 阅读全文
posted @ 2020-05-25 13:47 咔啡 阅读(259) 评论(0) 推荐(0)