首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Spark学习技巧

    kafka面试总结

    转自:https://www.cnblogs.com/threecha/p/13737421.html 从以下方面对kafka面试进行总结:基本原理架构/项目实践/生产者/消费者/协调者/存储层/控制器 有那些消息模型 队列模型和发布订阅 kafka使用消费者组统一了上面2种消息模型。 时间戳] 2.client对ProducerRecord进行序列化 3.根据分区策略确定分区[无key轮询有key murmur2(key) mod PartitionNum] 4.将消息放入缓存区[每一个分区对应一个双端队列 2.sender线程可以使用单线程迭代 消费者 什么是管理者 管理者是消费者组中的概念,用于对同一个消费者组中的所有消费者进行协调。 说下2种消费模式 消费模式可分为订阅模式和分配模式 我们项目中有4个分区,使用的订阅模式 设置了4个消费者。

    91720发布于 2021-03-05
  • 来自专栏后台技术底层理解

    面试:集合:redis:kafka

    (2)读取binlog后分析 ,利用消息队列,推送更新各台的redis缓存数据。 kafka、rabbitMQ等来实现推送更新Redis! 一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 MySQL 数据库,又插入了一条数据,此时 id 是几? 2.ListIterator有add方法,可以向List中添加对象,而Iterator不能。 优化的key大小 尽可能使用Hash,hash占用空间少; 选择内存占用和效率更好的数据结构zipList kafka 有几种数据保存策略 Kafka Broker默认的消息保留策略是:要么保留一定时间 https://www.jianshu.com/p/7008d2a1e320 时间和大小不论那个满足条件,都会清空数据。

    82730发布于 2020-08-04
  • 来自专栏大数据成长之路

    快速入门Kafka系列(2)——Kafka集群搭建

    集群规划 node01 node02 node03 zk zk zk kafka kafka kafka 2、下载安装包并上传解压 通过以下地址进行下载安装包 node01 运行日志存放的路径 log.dirs=/export/servers/kafka_2.11-1.0.0/logs #topic 在当前 broker 上的分区个数 num.partitions=2 # server.properties 2>&1 & node02执行以下命令将kafka进程启动在后台 cd /export/servers/kafka_2.11-1.0.0 nohup bin/kafka-server-start.sh config/server.properties 2>&1 & node03执行以下命令将kafka进程启动在后台 cd /export/servers/kafka_2.11-1.0.0 nohup bin/kafka-server-start.sh config/server.properties 2>&1 & 三台机器也可以执行以下命令停止kafka集群 cd /export/servers/kafka

    85110发布于 2021-01-27
  • 来自专栏服务化进程

    面试必问之kafka

    2、 异步 快递小哥打电话给我后需要一直在你楼下等着,直到我拿走你的快递他才能去送其他人的。快递小哥将快递放在小芳便利店后,又可以干其他的活儿去了,不需要等待你到来而一直处于等待状态。 问题2Kafka中有哪几个组件? 主题:Kafka主题是一堆或一组消息。 生产者:在Kafka,生产者发布通信以及向Kafka主题发布消息。 如何判断节点是否存活 (1)节点必须可以维护和 ZooKeeper 的连接,Zookeeper 通过心跳机制检查每个节点的连 接 (2)如果节点是个 follower,他必须能及时的同步 leader 设置 heartbeat.interval.ms = 2s。 如果一定要做到顺序消费,肯定是可以的,但是这个浪费资源,因为kafka就是针对高并发大吞吐量而生,下面说一下顺序消费方案: 1、一个topic、一个partition、一个线程 2、一个topic、n个

    81821编辑于 2022-01-06
  • 来自专栏cwl_Java

    经典面试题-Kafka

    第 7 章 Kafka 面试题 7.1 面试问题 Kafka 中的 ISR(InSyncRepli)、OSR(OutSyncRepli)、AR(AllRepli)代表什么? Kafka 中的 HW、LEO 等分别代表什么? Kafka 中是怎么体现消息顺序性的? Kafka 中的分区器、序列化器、拦截器是否了解?它们之间的处理顺序是什么? 1)会在 zookeeper 中的/brokers/topics 节点下创建一个新的 topic 节点,如:/brokers/topics/first 2)触发 Controller 的监听程序 3 Kafka 有内部的 topic 吗?如果有是什么?有什么所用? Kafka 分区分配的概念? 简述 Kafka 的日志目录结构? 如果我指定了一个 offset,Kafka Controller 怎么查找到对应的消息? 聊一聊 Kafka Controller 的作用? Kafka 中有那些地方需要选举?

    70720发布于 2020-02-24
  • 来自专栏用户9257747的专栏

    精选Kafka面试

    什么是KafkaKafka中有哪几个组件? 主题(Topic):Kafka主题是一堆或一组消息。 生产者(Producer):在Kafka,生产者发布通信以及向Kafka主题发布消息。 Kafka系统工具有哪些类型? Kafka迁移工具:它有助于将代理从一个版本迁移到另一个版本。 Mirror Maker:Mirror Maker工具有助于将一个Kafka集群的镜像提供给另一个。 Kafka可以接收的最大消息大小约为1000000字节。 Kafka的优点有那些? 高吞吐量:我们在Kafka中不需要任何大型硬件,因为它能够处理高速和大容量数据。 Kafka 并不支持主写从读,因为主写从读有 2 个很明 显的缺点: 数据一致性问题。数据从主节点转到从节点必然会有一个延时的时间窗口,这个时间 窗口会导致主从节点之间的数据不一致。

    3.8K30编辑于 2022-04-07
  • 来自专栏后台技术底层理解

    Kafka 基础面试

    Kafka的设计模式主要基于事务日志设计。 2. Kafka中有哪几个组件? 主题:Kafka主题是一堆或一组消息。 生产者:在Kafka,生产者发布通信以及向Kafka主题发布消息。 它可以帮助: 1.轻松推送记录 2.可以存储大量记录,而不会出现任何存储问题 3.它还可以在记录进入时对其进行处理。 14. 你能用Kafka做什么? Kafka生产者客户端中使用了几个线程来处理?分别是什么? 2个,主线程和Sender线程。 Range 分区不会把主题看做一个整体进行划分 假设 有两个主题, T1(0,1,2), T2(0,1,2), 两个消费者组 (A,B) (C) A 消费者 订阅 T1 , B 订阅 T1, T2 A,B 进行轮询的分区有: T1 0 T1 1 T1 2 T2 0 T2 1 T2 3 Range : 按主题划分,先考虑谁订阅了这个主题,然后再进行划分 39. Kafka 如何保证数据的顺序性?

    93930发布于 2020-08-05
  • 来自专栏对线JAVA面试

    面试系列-kafka事务控制

    kafka事务机制 kafka的事务机制,是kafka实现端到端有且仅有一次语义(end-to-end EOS)的基础;事务涉及到 transactional producer 和transactional 的事务机制,在底层依赖于幂等生产者,幂等生产者是kafka事务的必要不充分条件; 事实上,开启kafka事务时,kafka会自动开启幂等生产者; kafka事务支持的设计原理 Transaction Coordinator log是kakfa的一个内部topic, 所以kafka可以通过内部的复制协议和选举机制(replication protocol and leader election processes),来确保 Transaction Coordinator还负责将事务写入kafka内部的一个topic,这样即使整个服务重启,由于事务状态得到保存,正在进行的事务状态可以得到恢复,从而继续进行; kafka事务机制下读写流程 全局一致的transactional.id维护 transactional.id在kafka的事务机制中扮演了关键的角色,kafka正是基于该参数来过滤掉僵尸生产者的 (fencing out zombies

    1.1K10编辑于 2022-12-29
  • 来自专栏暴走大数据

    面试角度详解Kafka

    Kafka 就是通过消费组的方式来实现消息 P2P 模式和广播模式。 Broker:服务代理节点。Broker 是 Kafka 的服务节点,即 Kafka 的服务器。 关于 ISR,还有一个常见的面试题目是如何判断副本是否应该属于 ISR。 所以理解这些配置背后的实现原理,可以让我们在实践中懂得如何使用和优化 Kafka。既可面试造火箭,也可以实战造火箭。 比如:7200rpm 的磁盘平均旋转延迟大约为 60*1000/7200/2 = 4.17ms,而转速为 15000rpm 的磁盘其平均旋转延迟为 2ms。 ” 零拷贝 “哈哈,这个我面试被问到过。可惜答得一般般,唉。 ” 什么是零拷贝?

    1.5K60发布于 2021-07-12
  • 来自专栏全栈程序员必看

    angular面试问题_kafka面试

    Angular v8+面试系列 Angular 面试题汇总1-基本知识 Angular 面试题汇总2-Component/Service Angular 面试题汇总3-单元测试 目录 Angular 端到端测试(e2e) Angular中的测试有哪些种,基于哪些测试框架 Angular的测试主要包括单元测试(Unit Test)和端到端测试(e2e)。 端到端测试(e2e):基于protractor。protractor是Angular专用的e2e框架。 什么是Karma? 在Angular中有什么作用? 将依赖项加到providers中 TestBed.configureTestingModule({ providers: [YourDependencyService] }); 端到端测试(e2e ---- Angular v8+面试系列 Angular 面试题汇总1-基本知识 Angular 面试题汇总2-Component/Service Angular 面试题汇总3-单元测试 版权声明

    3.5K20编辑于 2022-09-29
  • 来自专栏写代码和思考

    kafka 学习笔记 2 -使用 docker 安装部署 kafka

    背景 本节使用 docker-compose 来创建 kafka 容器。 2. --partitions 4 --zookeeper kafka_zookeeper_1:2181 --replication-factor 1 2、查看有哪些 topic $KAFKA_HOME/ bin/kafka-topics.sh kafka-topics --list --zookeeper kafka_zookeeper_1 3、查看 topic 详情 $KAFKA_HOME/bin/kafka-topics.sh 参数说明: --topic=test 指示了一个 topic 名称 --broker-list kafka_kafka_1:9092 指示了 kafka服务的地址 $KAFKA_HOME /bin/kafka-console-producer.sh --topic=topic123 --broker-list kafka_kafka_1:9092 2、接收信息 接收信息使用: kafka-console-consumer.sh

    1.1K20发布于 2021-07-20
  • 来自专栏JavaEdge

    Kafka实战(2)-Kafka消息队列模型核心概念

    Kafka是分布式的,基于发布订阅的消息系统。 2 Broker(服务器端) Kafka的服务器端由被称为Broker的服务进程构成,即一个Kafka集群由多个Broker组成。 分区位移从0开始,假设一个生产者向一个空分区写入10条消息,则这10条消息的位移依次是0、1、2、…、9。 4 Topic 一个业务即一个Topic。 Kafka在后台还有定时任务会定期地检查老的日志段是否能够被删除,从而实现回收磁盘空间的目的。 这里再重点说说消费者。 点对点模型(Peer to Peer,P2P)和发布订阅模型。 在Kafka中实现这种P2P模型的方法就是引入了消费者组(Consumer Group)。所谓的消费者组,指的是多个消费者实例共同组成一个组来消费一组主题。

    77830编辑于 2022-11-30
  • 来自专栏大数据工程师

    Kafka面试题——20道Kafka知识点

    本篇给大家总结了20道Kafka知识点或者说面试题,持续更新中... 1.kafka的3个关键功能? 发布和订阅记录流,类似于消息队列或企业消息传递系统。 以容错的持久方式存储记录流。 处理记录流。 2.kafka通常用于两大类应用? 建立实时流数据管道,以可靠地在系统或应用程序之间获取数据 构建实时流应用程序,以转换或响应数据流 3.kafka特性? 消息持久化 高吞吐量 扩展性 多客户端支持 Kafka Streams 安全机制 数据备份 轻量级 消息压缩 4.kafka的5个核心Api? Kafka集群中,一个kafka实例被称为一个代理(Broker)节点。 6.什么是Producer(生产者)? 消息的生产者被称为Producer。 实际写入到kafka集群并且可以被消费者读取的数据。每条记录包含一个键、值和时间戳。 12.kafka适合哪些场景? 日志收集、消息系统、活动追踪、运营指标、流式处理、时间源等。

    85800发布于 2020-06-29
  • 来自专栏对线JAVA面试

    2万长文搞懂Kafka

    优点:控制了流量 缺点:会让流程变慢 2Kafka核心概念 生产者:Producer 往Kafka集群生成数据消费者:Consumer 往Kafka里面去获取数据,处理数据、消费数据Kafka的数据是由消费者自己去拉去 服务器2kafka2):创建目录topic_a-1: 服务器3(kafka3):创建目录topic_a-2: 7、Kafka二分查找定位数据 Kafka里面每一条消息,都有自己的offset 原理比较了解,尤其是网络设计部分 Reactor网络设计模式1: Reactor网络设计模式2: Reactor网络设计模式3: Kafka超高并发网络设计: 9、Kafka冗余副本保证高可用 zookeeper集群 hadoop1 hadoop2 hadoop3 kafka集群 理论上来讲,我们不应该把kafka的服务于zk的服务安装在一起。但是我们这儿服务器有限。 14.8 group coordinator原理 面试题:消费者是如何实现rebalance的?

    63420编辑于 2022-10-27
  • 来自专栏后端技术

    kafka 网络模型2 Selector

    在上一篇文章中,我分析了Kafka的请求、响应流程,但留下了Selector的疑点。 Selector 读完上一篇文章,我们应当理解了Kafka Selector在内部维护了一个java nio Selector,变量名叫nioSelector。 ? 外部向Kafka Selector注册SocketChannel,其实都是注册到了java Selector上。 而Kafka Selector又是通过调用java Selector,来收集触发了I/O事件的Socket,从而对其执行I/O。 ?

    1.1K30发布于 2020-06-09
  • 来自专栏算法之名

    Springboot2整合Kafka

    依赖 <dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId > </dependency> 配置 spring: kafka: bootstrap-servers: 外网ip:9092 producer: retries: 0 batch-size: 16384 buffer-memory: 33554432 key-serializer: org.apache.kafka.common.serialization.StringSerializer value-serializer: org.apache.kafka.common.serialization.StringSerializer consumer: group-id value-deserializer: org.apache.kafka.common.serialization.StringDeserializer 生产者 消息实体类 @AllArgsConstructor

    70760发布于 2021-01-18
  • 来自专栏小工匠聊架构

    Apache Kafka - ConsumerInterceptor 实战(2

    Pre Apache Kafka - ConsumerInterceptor 实战 (1) 用代码的方式实现了ConsumerInterceptor , 接下来我们用 配置的方式来实现一下 。 找原生的配置 Kafka Consumer的 都在 ConsumerConfig 找到 public static final String INTERCEPTOR_CLASSES_CONFIG = "interceptor.classes"; OK,继续 ---- 示例 配置文件 自定义 拦截器 package net.zf.module.system.kafka.interceptor org.apache.kafka.clients.consumer.ConsumerRecords; import org.apache.kafka.clients.consumer.OffsetAndMetadata 消费者的拦截器需要进行以下步骤: 首先,创建一个拦截器类,实现Kafka的ConsumerInterceptor接口,定义拦截器的逻辑。

    57820编辑于 2023-05-27
  • 来自专栏CSDN

    Kafka常见面试

    Kafka Kafka集群leader选举 Kafka创建副本的2种模式——同步复制和异步复制 同步复制流程 异步复制流程 Kafka判断一个broker节点是否存活 Kafka生产者发送消息确认机制( ack机制) KafkaISR机制 leader如何动态维护ISR Kafka集群leader选举 在kafka集群中,第一个启动的broker会在zk中创建一个临时节点/controller让自己成为控制器 Kafka创建副本的2种模式——同步复制和异步复制 Kafka动态维护了一个同步状态的副本的集合(a set of In-Sync Replicas),简称ISR,在这个集合中的节点都是和leader 既然kafka支持副本模式,那么其中一个Broker里的挂掉,一个新的leader就能通过ISR机制推选出来,继续处理读写请求。 生产者没有收到leader的ack回应会重试投递,会造成数据重复 kafKa消费消息主要是依靠偏移量进行消费数据的,偏移量是一个不断自增的整数值,当发生重平衡的时候,便于用来恢复数据。

    54510编辑于 2021-12-30
  • 来自专栏Java技术栈

    Kafka 怎么顺序消费?面试必备!

    1、问题引入 kafka的顺序消费一直是一个难以解决的问题,kafka的消费策略是对于同Topic同Partition的消息可保证顺序消费,其余无法保证。 另外,Kafka 系列面试题和答案全部整理好了,微信搜索Java技术栈,在后台发送:面试,可以在线阅读。 2、解决思路 现有Topic-insert和Topic-update,数据唯一标识为id,对于id=1的数据而言,要保证Topic-insert消费在前,Topic-update消费在后。 使用synchronized进行加锁的话,会影响无关联的insert和update的数据消费能力,如id=1的insert和id=2的update,在synchronized的情况下,无法并发处理,这是没有必要的 面试题整理好了,大家可以在Java面试库小程序在线刷题。

    3.3K50编辑于 2022-03-18
  • 来自专栏挨踢小子部落阁

    Kafka常见面试

    1 什么是kafka Kafka是分布式发布-订阅消息系统,它最初是由LinkedIn公司开发的,之后成为Apache项目的一部分,Kafka是一个分布式,可划分的,冗余备份的持久性的日志服务,它主要用于处理流式数据 2 为什么要使用 kafka,为什么要使用消息队列 缓冲和削峰:上游数据时有突发流量,下游可能扛不住,或者下游没有足够多的机器来保证冗余,kafka在中间可以起到一个缓冲的作用,把消息暂存在kafka中 ; (2)acks=1、同步模式下,只有Leader确认接收成功后但挂掉了,副本没有同步,数据可能丢失; 2、消息消费 Kafka消息消费有两个consumer接口,Low-level API和High-level Kafka 并不支持主写从读,因为主写从读有 2 个很明 显的缺点: (1)数据一致性问题。数据从主节点转到从节点必然会有一个延时的时间窗口,这个时间 窗口会导致主从节点之间的数据不一致。 (2)延时问题。类似 Redis 这种组件,数据从写入主节点到同步至从节点中的过程需要经 历网络→主节点内存→网络→从节点内存这几个阶段,整个过程会耗费一定的时间。

    56620编辑于 2023-03-15
领券