zoukankan      html  css  js  c++  java
  • 我总结的面试题系列:kafka

    1.Kafka 的设计时什么样的呢?

    Kafka将消息以topic为单位进行归纳

    将向Kafka topic发布消息的程序成为producers.

    将预订topics并消费消息的程序成为consumer.

    Kafka以集群的方式运行,可以由一一个或多个服务组成,每个服务叫做一个broker.producers通过网络将消息发送到Kafka集群,集群向消费者提供消息

    2数据传输的事物定义有哪三种?

    数据传输的事务定义通常有以下三种级别:

    (1) 最多一次:消息不会被重复发送,最多被传输一次,但也有可能一-次不传输(2)最少一一次: 消息不会被漏发送,最少被传输一次,但也有可能被重复传输

    (3)精确的一次(Exactly once) :不会漏传输也不会重复传输,每个消息都传输被一次而且仅仅被传输一次,这是大家所期望的

    3.Kafka判断一个节点是否还活着有那两个条件?

    (1)节点必须可以维护和ZooKeeper的连接,Zookeeper 通过心跳机制检查每个节点的连

    (2)如果节点是个fllower,他必须能及时的同步leader的写操作,延时不能太久

    4 producer是否直接将数据发送到broker的leader(主节点)?

    producer直接将数据发送到broker的leader(主节点),不需要在多个节点进行分发,为了帮助producer做到这点,所有的Kafka节点都可以及时的告知:那些节点是活动的,日标topic目标分区的leader在哪,这样producer就可以直授将消息发送到目的地了

    5、 Kafa consumer是否可以消费指定分区消息?

    Kafa

    consumer

    消费消息时,向broker发出"fetch"请求去消费特定分区的消息,consumer指定消息在日志中的偏移量(offset),

    就可以消费从这个位置开始的消息,customer 拥有了offset的控制权,可以向后回滚去重新消费之前的消息,这是很有意义的

    需要的点赞+关注,私信我获取,还有更多好货等你来取


     
  • 相关阅读:
    剖析Vue原理&实现双向绑定MVVM
    js处理异步的几种方式
    【转】从Vue.js源码看异步更新DOM策略及nextTick
    js中获取css样式属性值
    原生JS节点操作
    圣杯布局和双飞翼布局的作用和区别
    vue自定义插件-弹框
    MongoDB 数据库创建删除、表创建删除、数据增删改查
    Vue组件之间数据交互与通信
    Vue中的计算属性与$watch
  • 原文地址:https://www.cnblogs.com/ming569/p/13777940.html
Copyright © 2011-2022 走看看