kafka原理以及使用(1)

网友投稿 704 2022-09-13 14:25:00

kafka原理以及使用(1)

1 Kafka的特性 高吞吐量、低延迟:kafka每秒可以处理几十万条消息,它的延迟最低只有几毫秒 可扩展性:kafka集群支持热扩展 持久性、可靠性:消息被持久化到本地磁盘,并且支持数据备份防止数据丢失 容错性:允许集群中节点失败(若副本数量为n,则允许n-1个节点失败) 高并发:支持数千个客户端同时读写

2Kafka设计思想和名词解释

名词

解释

Producer

消息和数据生成者,向Kafka的一个topic发布消息的 过程叫做producers

Consumer

消息和数据的消费者,订阅topic并处理其发布的消费过程叫做consumers

ConsumerGroup


消费者组,可以并行消费Topic中的partition的消息。

各个consumer可以组成一个组,每个消息只能被组中的一个consumer消费,如果一个消息

可以被多个consumer消费的话,那么这些consumer必须在不同的组。


Broker

缓存代理,Kafka的服务实例就是一个broker

Topic

Kafka处理资源的消息源(feeds of messages)的不同分类

Partition


Topic物理上的分组,一个topic可以分为多个partion,每个partion是一个有序的队列。

partion中每条消息都会被分配一个 有序的Id(offset)


Message

 消息,是通信的基本单位,每个producer可以向一个topic(主题)发布一些消息

offset


partition中下一个要被消费的消息位置


kafka有一个核心的概念叫做“Topic”,消息处理的集合。不同的topic做不同的消息处理。下面有Partition,分区,每个topic下有多个partition,不同的partition可以放到不同的服务器上。多台服务器上有partition时,其中有一个Leader,可对外提供读写操作。剩下的都是Follower,需要实时同步。当Leader宕机后,会重新选举一个Follower成为Leader。Kafka 写入数据丢失问题a业务往Leader写入了数据,Leader还没有同步到Follower ,此时Follower成为了Leader ,但是因为数据没同步过去,所以导致这条数据丢失了。Kafka 的 ISR 机制Kafka的核心机制,ISR 机制。自动给每个Partition维护一个ISR 列表,里边的leader和Follower始终是同步的。如果follewer由于自身关系没成功同步leader数据,这个Follower 就会被认为是“out-of-sync”,被从 ISR 列表里踢出去Kafka 写入的数据如何保证不丢失ISR 列表中始终有一个leader和Follower。每次写入数据的时候,只有leader和Follower同时写入成功,才算成功。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:ubuntu18.04 无法安装gcc的解决方法
下一篇:Apache IoTDB 2021年度总结:在持续开源的路上勇往直前
相关文章