随笔分类 -  Kafka

摘要:MQ问题收集 MQ的优缺点 优点: 异步处理:例如短信通知、终端状态推送、App推送、用户注册等 数据同步:业务数据推送同步 重试补偿:记账失败重试 系统解耦:通讯上下行、终端异常监控、分布式事件中心 流量消峰:秒杀场景下的下单处理 发布订阅:HSF的服务状态变化通知、分布式事件中心 高并发缓冲:日 阅读全文
posted @ 2023-02-26 21:43 hongdada 阅读(51) 评论(0) 推荐(0) 编辑
摘要:Kafka 事务 幂等性 幂等性是指发送同样的请求,对系统资源的影响是一致的。结合 Kafka Producer,是指在多次发送同样的消息,Kafka做到发送消息的不丢失和不重复。 Kafka为啥需要幂等性? 在使用Kafka时,需要确保Exactly-Once语义。分布式系统中,一些不可控因素有很 阅读全文
posted @ 2022-12-02 17:22 hongdada 阅读(2800) 评论(0) 推荐(1) 编辑
摘要:Kafka 生产者Producer 整体架构 从上面的架构图可以看出,生产的流程主要就是一个producer线程和一个sender线程,它们之间通过BatchQueue来获取数据,它们的关系是一一对应的,所以kafka的生产过程都是异步过程。 它的同步和异步指的是接收响应结果的模式是同步阻塞还是异步 阅读全文
posted @ 2022-11-29 15:51 hongdada 阅读(370) 评论(0) 推荐(0) 编辑
摘要:Kafka 控制器Controller Broker 在启动时,会尝试去 ZooKeeper 中创建 /controller 节点。Kafka 当前选举控制器的规则是:第一个成功创建 /controller 节点的 Broker 会被指定为控制器。 Controller Broker的主要职责有很多 阅读全文
posted @ 2022-11-29 11:48 hongdada 阅读(941) 评论(0) 推荐(0) 编辑
摘要:什么是分区再均衡 分区的所有权从一个消费者转移到另一个消费者,这样的行为被称为分区再均衡(Rebalance)。Rebalance 实现了消费者群组的高可用性和伸缩性。 Rebalance 本质上是一种协议,规定了一个 Consumer Group 下的所有 Consumer 如何达成一致,来分配订 阅读全文
posted @ 2022-11-25 00:04 hongdada 阅读(1899) 评论(0) 推荐(1) 编辑
摘要:日志存储结构 Kafka存储结构图: kafka 中消息是以主题 topic 为基本单位进行归类的,这里的 topic 是逻辑上的概念,实际上在磁盘存储是根据分区存储的,每个主题可以分为多个分区、分区的数量可以在主题创建的时候进行指定。例如下面 kafka 命令创建了一个 topic 为 test 阅读全文
posted @ 2022-11-24 17:05 hongdada 阅读(1982) 评论(0) 推荐(0) 编辑
摘要:Producer: block.on.buffer.full = true 尽管该参数在0.9.0.0已经被标记为“deprecated”,但鉴于它的含义非常直观,所以这里还是显式设置它为true,使得producer将一直等待缓冲区直至其变为可用。否则如果producer生产速度过快耗尽了缓冲区, 阅读全文
posted @ 2022-11-24 16:21 hongdada 阅读(108) 评论(0) 推荐(0) 编辑
摘要:延时队列 在发送延时消息的时候并不是先投递到要发送的真实主题(real_topic)中,而是先投递到一些 Kafka 内部的主题(delay_topic)中,这些内部主题对用户不可见, 然后通过一个自定义的服务拉取这些内部主题中的消息,并将满足条件的消息再投递到要发送的真实的主题中,消费者所订阅的还 阅读全文
posted @ 2022-11-24 15:44 hongdada 阅读(3375) 评论(0) 推荐(0) 编辑
摘要:Kafka 分区分配策略 生产者发送消息分区分配策略 kafka 里的 partitioner (分区器)来负责客户端生产层面的负载均衡。 如果指定分区,就直接使用该分区。 未指定分区但存在key,则根据序列化key使用murmur2哈希算法对分区数取模 如果不存在分区或key,则会使用粘性分区策略 阅读全文
posted @ 2022-11-24 11:05 hongdada 阅读(1891) 评论(0) 推荐(0) 编辑
摘要:Kafka 相关配置参数 生产者配置参数: acks:指定了必须有多少个分区副本收到消息,生产者才会认为消息写入是成功的。默认为acks=1 acks=0 如果设置为 0,则 Producer 不会等待服务器的反馈。该消息会被立刻添加到 socket buffer 中并认为已经发送完成。在这种情况下 阅读全文
posted @ 2022-11-24 09:52 hongdada 阅读(4704) 评论(0) 推荐(1) 编辑
摘要:Kafka副本备份机制(LEO,HW,leader epoch) Kafka 0.11版本之前水印副本备份机制 步骤: 初始leader,follower参数都为0,其中leader中的remote LEO记录的是follower的LEO 生产者发送消息m1到leader中,更新leader的LEO 阅读全文
posted @ 2022-11-23 17:02 hongdada 阅读(561) 评论(0) 推荐(0) 编辑
摘要:Kafka 问题收集 Kafka关键字名词 ISR 所有与leader副本保持一定程度同步的副本(包括leader副本在内)组成 ISR (In Sync Replicas)。 ISR 集合是 AR 集合的一个子集。 AR 分区中的所有副本统称为 AR (Assigned Replicas) OSR 阅读全文
posted @ 2022-11-09 23:11 hongdada 阅读(370) 评论(0) 推荐(0) 编辑
摘要:老版本Kafka(zk) 创建topic kafka-topics -create --zookeeper 192.168.1.11:2181 --replication-factor 1 --partitions 1 --topic zainfo-xm an-baseline-web-202007 阅读全文
posted @ 2022-10-09 08:20 hongdada 阅读(182) 评论(0) 推荐(0) 编辑
摘要:helm镜像库配置 helm repo add stable http://mirror.azure.cn/kubernetes/charts helm repo add incubator http://mirror.azure.cn/kubernetes/charts-incubator hel 阅读全文
posted @ 2019-08-28 15:57 hongdada 阅读(4056) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示