随笔分类 -  kafka

摘要:参数的设置对Kafka性能有着至关重要的影响。以下是一些关键参数及其对性能的具体影响: Kafka Broker配置参数 num.network.threads:控制Kafka网络线程的数量,这些线程负责处理网络I/O操作。增加此参数的值可以提高网络I/O处理能力,但也会增加内存消耗。 num.io 阅读全文
posted @ 2024-12-27 17:26 姚春辉 阅读(369) 评论(0) 推荐(0)
摘要:partitioner.class在Kafka中是一个重要的配置参数,它用于指定Kafka生产者(Producer)端的分区器(Partitioner)实现类。以下是对partitioner.class的详细解释: 一、定义与作用 定义:partitioner.class是Kafka生产者配置中的一 阅读全文
posted @ 2024-12-27 17:13 姚春辉 阅读(153) 评论(0) 推荐(0)
摘要:是的,当Kafka中的消费者数量大于分区数量时,多余的消费者将不会接收到消息,即它们不会参与消费过程。这是Kafka为了保证消息消费的顺序性和一致性而设计的一种机制。 在Kafka中,每个分区(Partition)是一个有序的、不可变的消息序列,它可以被连续地追加。分区在物理上对应为一个或多个文件, 阅读全文
posted @ 2024-12-20 14:54 姚春辉 阅读(534) 评论(0) 推荐(0)
摘要:在Kafka中,消费者的增加和减少都可能触发消费者组的重平衡(Rebalance)过程。以下是关于Kafka消费者减少和增多引起的Rebalance的详细解释: 一、消费者减少引起的Rebalance 触发条件: 当消费者组内的消费者数量减少时,无论是主动离开还是由于故障而掉线,都会触发Rebala 阅读全文
posted @ 2024-12-20 14:53 姚春辉 阅读(301) 评论(0) 推荐(0)
摘要:session.timeout.ms 是 Kafka 消费者配置中的一个重要参数,它定义了消费者与 Kafka 集群之间的会话超时时间。以下是关于 session.timeout.ms 的详细解释: 定义与功能 session.timeout.ms 表示消费者在与 Kafka 集群建立会话后,如果在 阅读全文
posted @ 2024-12-20 14:52 姚春辉 阅读(592) 评论(0) 推荐(0)
摘要:heartbeat.interval.ms 是 Kafka 中的一个配置参数,它指定了消费者或生产者向 Kafka 集群中的协调者(coordinator)发送心跳请求的间隔时间。以下是关于 heartbeat.interval.ms 的详细解释: 定义与功能 heartbeat.interval. 阅读全文
posted @ 2024-12-20 14:51 姚春辉 阅读(282) 评论(0) 推荐(0)
摘要:max.poll.interval.ms 是 Kafka 消费者配置中的一个关键参数,它定义了消费者在处理完一批消息后,再次调用 poll() 方法以拉取下一批消息的最大时间间隔。以下是关于 max.poll.interval.ms 的详细解释: 定义与功能 max.poll.interval.ms 阅读全文
posted @ 2024-12-20 14:33 姚春辉 阅读(1040) 评论(0) 推荐(0)
摘要:在Kafka中,消费者解压压缩的消息并不只是通过设置compression.type配置属性就可以完成的,但消费者确实不需要在代码中显式进行压缩处理。以下是对这一过程的详细解释: 消费者的解压缩配置 通常无需配置compression.type: 对于消费者而言,通常不需要显式设置compressi 阅读全文
posted @ 2024-12-19 14:54 姚春辉 阅读(299) 评论(0) 推荐(0)
摘要:当Kafka发送的消息太大时,确实可能会报异常。Kafka默认的消息大小限制是1MB(即1048576字节),如果生产者尝试发送一个大于此限制的消息,Kafka将会拒绝并抛出异常,通常是RecordTooLargeException message.max.bytes是Kafka中的Broker配置 阅读全文
posted @ 2024-12-19 14:51 姚春辉 阅读(1031) 评论(0) 推荐(0)
摘要:Kafka的“至少一次”(At Least Once)和“精确一次”(Exactly Once)是两种不同的消息传递语义,它们在确保消息传递的可靠性和准确性方面有不同的特点和实现方式。 一、至少一次(At Least Once) 定义:“至少一次”传递语义意味着生产者发送到Kafka的消息会至少被传 阅读全文
posted @ 2024-12-05 18:14 姚春辉 阅读(643) 评论(0) 推荐(0)
摘要:Kafka的异步发送是Kafka消息传递机制中的另一种重要方式,与同步发送相比,它在保证一定消息可靠性的基础上,提供了更高的发送性能。以下是对Kafka异步发送的详细解释: 一、异步发送的定义 在异步发送模式下,Kafka生产者发送消息后不会立即等待服务器的确认响应,而是继续发送下一条消息或进行其他 阅读全文
posted @ 2024-12-05 16:33 姚春辉 阅读(186) 评论(0) 推荐(0)
摘要:Kafka的同步发送是Kafka消息传递机制中的一种重要方式,它确保了消息在发送过程中的可靠性和一致性。以下是对Kafka同步发送的详细解释: 一、同步发送的定义 在同步发送模式下,Kafka生产者发送完消息后会阻塞等待Kafka服务器的响应。生产者只有在收到Kafka服务器的响应后,才会进行下一步 阅读全文
posted @ 2024-12-05 16:32 姚春辉 阅读(211) 评论(0) 推荐(0)
摘要:min.insync.replicas是Apache Kafka中的一个关键配置参数,它定义了ISR(In-Sync Replicas,同步副本)集合中的最少副本数。ISR是Kafka数据复制机制中的一个重要概念,它包含了所有与Leader副本保持同步的副本。以下是关于min.insync.repl 阅读全文
posted @ 2024-12-05 13:58 姚春辉 阅读(612) 评论(0) 推荐(0)
摘要:unclean.leader.election.enable是Apache Kafka中的一个关键配置参数,它决定了在ISR(In-Sync Replicas,同步副本)集合为空时,是否允许从非ISR集合中选择副本作为新的Leader。以下是关于unclean.leader.election.ena 阅读全文
posted @ 2024-12-05 13:56 姚春辉 阅读(377) 评论(0) 推荐(0)
摘要:在Kafka中,当使用acks=1策略时,确实存在数据丢失的风险,尽管这种风险相对较低。以下是对acks=1策略下数据丢失情况的详细解释: 一、acks=1策略概述 acks=1(或acks=leader)表示生产者会等待Kafka集群中的主副本(Leader)确认消息已经被成功写入日志后,才认为这 阅读全文
posted @ 2024-12-04 18:33 姚春辉 阅读(207) 评论(0) 推荐(0)
摘要:为了保障消息从生产者可靠地发送至 Broker,我们需要确保两点 Producer 发送消息后,能够收到来自 Broker 的消息保存成功 ack; Producer 发送消息后,能够捕获超时、失败 ack 等异常 ack 并做处理; Kafka的acks(acknowledgements)策略是生 阅读全文
posted @ 2024-12-04 18:30 姚春辉 阅读(321) 评论(0) 推荐(0)
摘要:什么时机触发Rebalance Kafka 消费组发生重平衡的条件有以下几个: 消费组成员发生变更,有新消费者加入或者离开,或者有消费者崩溃;消费组订阅的主题数量发生变更;消费组订阅的分区数发生变更。 总的来说就是: 消费中的消费者,主题,分区的数量其中的一点发生变化都会造成Rebalance0.1 阅读全文
posted @ 2022-06-21 16:37 姚春辉 阅读(862) 评论(0) 推荐(0)
摘要:前言 我的上家公司是做餐饮系统的,每天中午和晚上用餐高峰期,系统的并发量不容小觑。为了保险起见,公司规定各部门都要在吃饭的时间轮流值班,防止出现线上问题时能够及时处理。 我当时在后厨显示系统团队,该系统属于订单的下游业务。用户点完菜下单后,订单系统会通过发kafka消息给我们系统,系统读取消息后,做 阅读全文
posted @ 2022-06-09 14:14 姚春辉 阅读(198) 评论(0) 推荐(0)
摘要:kafka的基本概念 kafka是什么 ? ​ kafka是一个多分区、多副本且基于zookeeper协调的分布式消息系统。也是一个分布式流式处理平台,它以高吞吐、可持久化、可水平扩展、支持流数据处理等多种特性而被广泛使用。 kafka扮演的三大角色 消息系统:kafka具备系统解耦、冗余存储、流量 阅读全文
posted @ 2021-11-04 10:05 姚春辉 阅读(1001) 评论(0) 推荐(0)
摘要:1. kafka介绍 1.1. 主要功能 根据官网的介绍,ApacheKafka®是一个分布式流媒体平台,它主要有3种功能: 1:It lets you publish and subscribe to streams of records.发布和订阅消息流,这个功能类似于消息队列,这也是kafka 阅读全文
posted @ 2021-05-19 13:46 姚春辉 阅读(2393) 评论(0) 推荐(0)