nihaoajgpy
码龄2年
关注
提问 私信
  • 博客:4,324
    4,324
    总访问量
  • 10
    原创
  • 894,937
    排名
  • 9
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2023-04-23
博客简介:

nihaoajgpy的博客

查看详细资料
个人成就
  • 获得2次点赞
  • 内容获得0次评论
  • 获得4次收藏
创作历程
  • 10篇
    2023年
成就勋章
TA的专栏
  • kafka
    1篇
兴趣领域 设置
  • 编程语言
    pythonscala
  • 大数据
    hadoophiverediszookeepersparkflumeelasticsearchkafkaflink时序数据库mapreducesqoop大数据etl
创作活动更多

超级创作者激励计划

万元现金补贴,高额收益分成,专属VIP内容创作者流量扶持,等你加入!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Kafka 在什么情况下会出现消息丢失?

丢失原因:数据从producer端push过来后,broker端需要将数据持久化存储到磁盘中,消息存储是异步存储的,按照一定的消息数量和间隔时间进行存储,如果在存储的时候broker挂了,此时选举了一个落后Leader 很多的Follower成为新的Leader,那么落后的消息就会丢失。2)拉去消息后,先提交offset再处理消息(如果处理消息的时候挂了,由于offset已经提交,consumer重启后会从之前提交的offset下一个位置开始消费,之前未处理的消息不会再次被处理,所以这部分消息已经丢失)
原创
发布博客 2023.08.02 ·
625 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

怎么尽可能保证 Kafka 的可靠性?

参数设定,默认30s。例如2超时,(leader:0, isr:0,1)。这样就不用等长期联系不上或者已经故障的节点。如果Follower长时间未向Leader发送通信请求或同步数据,则该Follower将被踢出ISR。,意为和 Leader保持同步的Follower+Leader集合(leader:0,isr:0,1,2)。Leader维护了一个动态的in-sync replica set(
原创
发布博客 2023.08.02 ·
107 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Kafka中如何做到数据唯一,即数据去重?

举例: 订单支付--> 用户付款--调用支付宝接口-->回写订单数据--> 发起一个异步线程,用于修改订单数据。使用原因:幂等性只能保障服务器不挂掉的情况下,发送数据是唯一的,假如发送者服务器挂掉了,那么重启之后还是会发送重复的数据,所以需要使用。就是指Producer不论向Broker发送多少次重复数据,Broker端都只会持久化一条,保证了不重复。如果kafka集群挂了,重启了,此时以前的数据还会发送一回,数据又重复了。对于一些非常重要的信息,比如和钱相关的数据,要求数据既不能重复也不丢失。
原创
发布博客 2023.08.02 ·
1242 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

生产者如何提高吞吐量?

4、 RecordAccumulator:缓冲区大小,修改为64m。2、linger.ms:等待时间,修改为5-100ms。3、compression.type:压缩snappy。1、batch.size:批次大小,默认16k。
原创
发布博客 2023.08.02 ·
90 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

zk在kafka集群中有何作用?

kafka集群中所有的broker信息、topic和partition的状态信息都会存储在zk节点上,当新的broker节点加入到集群或者topic和partition信息发生变化时,kafka会将这些信息存储到zk中。kafka中的消费者组信息、消费者offset信息都会存储在zk中,当消费者加入或者退出一个消费者组时,zk都会负责重新分配partition给消费者,并且跟进新的offset信息。kafka需要注册到一个zk集群中,已实现集群元数据管理和控制。二、zk在kafka集群中的作用。
原创
发布博客 2023.08.02 ·
521 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

简述kafka集群中的Leader选举机制

kafka集群中有一个broker的controller会被选举为controller Leader,负责管理集群broker的上下线,所有topic的分区副本分配和Leader选举等工作。选举规则:在isr中存活为前提,按照AR中排在前面的优先。例如:ar[1,0,2],isr[1,0,2],Leader就会按照1,0,2的顺序轮询。10.选举新的Leader(在isr中存活为前提,按照ar中排在最前面的优先)3.由选举出来的controller监听broker节点变化。11.更新Leader和isr。
原创
发布博客 2023.08.02 ·
384 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

kafka是如何处理数据乱序问题的?

生产者发送的数据,单分区内可以做到有序,多分区无法保证,除非把多个分区的数据拉取到消费端,进行排序,但是这样做效率很低,不如直接设置一个分区。=1(不需要考虑是否开启幂等性)
原创
发布博客 2023.08.02 ·
702 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

kafka中节点如何服役和退役?

3)创建副本存储计划(所有副本存储在broker0、broker1、broker2、broker3中)编写json: vi increase-replication-factor.json。3)创建副本存储计划(所有副本存储在broker0、broker1、broker2中)创建一个文件:vi topics-to-move.json。创建一个文件:vi topics-to-move.json。以上这个内容来自于第二步的执行计划。2)生成一个负载均衡的计划。2)生成一个负载均衡的计划。4)执行副本存储计划。
原创
发布博客 2023.08.02 ·
56 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Kafka中Leader挂了,Follower挂了,然后再启动,数据如何同步?

由于数据同步的时候先进入Leader,随后同步给Follower,假如Follower挂掉了,Leader和其他的Follower继续往前存储数据,挂掉的节点从ISR集合中剔除,此时挂掉的Follower又重启了,他会先从上次挂掉的节点的HW开始同步数据,直到追上最后一个Follower为止,会重新回归到ISR。2)为保证多个副本之间的数据一致性,其余的Follower会先将各自的log文件高于HW的部分截掉,然后从新的Leader同步数据。HW(高水位线) 演示:所有副本中,最小的LEO。
原创
发布博客 2023.08.02 ·
488 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

kafka中初始化的时候Leader选举有一定的规律,如何打破这个规律呢?

在生产环境中,每台服务器的配置和性能不一致,但是Kafka只会根据自己的代码规则创建对应的分区副本,就会导致个别服务器存储压力较大。所有需要手动调整分区副本的存储。需求:创建一个新的topic,4个分区,两个副本,名称为three。将 该topic的所有副本都存储到broker0和broker1两台服务器上。1.kafka在进行初始化的时候,选举谁当第一Leader,是有一定的算法的。(3)创建副本存储计划(所有副本都指定存储在 broker0、broker1 中)。(2)查看分区副本存储情况。
原创
发布博客 2023.08.02 ·
109 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏