![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Kafka
初心江湖路
多学一分增一分。
展开
-
Kafka数据不丢失的策略权衡
一、会丢数据的情况1、生产端可通过 producer.type 来选择发送模式,默认为 sync (同步),异步设置为 async1)同步模式下Producer 在发送消息之后,在得到返回结果前阻塞。这是一种牺牲性能的办法,而且对于不同的配置,性能的损失程度不同、可靠性也不一样。关键参数如下request.required.acks 表示producer的一次请求被认为是完成时,需要的...原创 2020-04-21 23:26:35 · 221 阅读 · 0 评论 -
从kafka的Coordinator看组件设计
以下描述默指kafka 0.10对应版本,Coordinator 默指 GroupCoordinator一、Coordinator是什么协调器二、干什么用故障探测和再平衡(Rebalance)在一个消费者组当中,每个消费者线程负责消费所订阅topic下的哪些分区,维护一个平衡消费的关系,使得组中的每个消费者负载均衡。故障探测指什么?每个consumer都和Coordinator建立连接...原创 2020-04-18 23:13:39 · 552 阅读 · 0 评论 -
Kafka对于分布式应用的作用
我们结合Kafka的特点1、数据存储在磁盘上,保留时间可以自行设定首先磁盘是廉价的,这样我们就能通过Kafka集群存储足够多的数据。而且我们可以设置数据保留合适时间,在消费之后能够被删除,从而及时释放磁盘空间。这里我们可以看出,Kafka能够作为分布式存储使用。分布式存储器还有HDFS,那Kafka和HDFS相比有什么特殊的呢?看下一个特点2、顺序读写磁盘数据通过Kafka存储到磁盘是通过...原创 2020-01-04 18:01:19 · 414 阅读 · 0 评论 -
Kafka元数据、消费者组相关、传送数据可靠性保证
1、Kafka的metadada 任何一个kafka broker上都有kafka topic的元数据信息,当Producer获取到元信息之后,便直接通过元信息和对应partition leader建立socket连接,消息直接发送到partition leader上。 这里边能够知道的是,每个kafka节点上都存有kafka topic的元数据信息,通过这种方式,数据发送时直接“建立专线...原创 2019-11-30 20:35:42 · 209 阅读 · 0 评论 -
Structured Streaming + Kafka如何确定topic各分区的消费偏移总量
根据各分区的未消费偏移量和整个topic各分区未消费偏移量之和的比值来确定各个分区拉取的偏移简单来讲就是根据设定的maxOffsetsPerTrigger和如下公式确定:maxOffsetsPerTrigger * (size / total) 其中size为分区对应的已提交未消费数据偏移量,total为各分区已提交未消费数据偏移量之和。如果未设置maxOffsetsPerTrigger,...原创 2019-11-16 21:46:02 · 1676 阅读 · 0 评论 -
Kafka分区可靠性及负载均衡如何实现
1、当brocker出现异常失败状况的时候Kafka集群会有什么动作?将日志同步到磁盘,以避免重启时进行日志恢复,日志恢复很耗时。只要server不是因为被kill,日志同步便会自动进行。进行leadership迁移,将该server作为leader的分区迁移到其他的副本上,然后其它副本便作为新的leader提供服务。需要配置 controlled.shutdown.enable=...原创 2019-11-04 21:25:57 · 1460 阅读 · 0 评论 -
Kafka为什么高效且被广泛使用-先清楚这些(一)
1、负载均衡对于kafka集群,日志通常都以多副本的方式存储,每个Topic设置多个分区,每个分区在多台机器上(对应配置的副本数)都有备份。每个分区对应一个leader,提供读写服务,其它servers都是followers,只对分区进行复制。每个server对其中某些分区表现为leader,而其他server对这些分区表现为followers。这样一来,持有log的server均对外提供读写服...原创 2019-09-04 10:30:44 · 504 阅读 · 0 评论 -
Kafka数据监控
一、kafka是怎么做数据监控的server端使用Yammer Metric作为监控报告工具Java client端使用内置的Kafka Metric来进行监控二、实现方式无论是server端还是client端,均通过JMX来进行测量数据报告。配置均为可插拔形式。...原创 2019-10-08 19:58:30 · 1401 阅读 · 0 评论