【kafka专栏】生产者数据批量发送流程源码解析

文章目录

    • 一、生产者数据发送整体流程
    • 二、ProducerRecord与ProducerBatch与RecordAccumulator
    • 三、定时发送与定量发送
    • 四、生产者数据发送流程环节

一、生产者数据发送整体流程

kafka生产者客户端核心的数据发送流程主要为三个部分:
在这里插入图片描述

  1. 主线程调用KafkaProducer发送数据,数据不是直接发送给kafka broker服务端,而是先缓冲起来。
  2. 有一个单独的线程(sender)专门负责将缓冲数据发往kafka broker服务端。
  3. 缓冲的目的是:为避免高并发请求造成的服务端压力,所以数据不是一条一条发给服务端,而是缓冲后批量发送。
  4. 单独线程负责数据发送的目的是:避免造成主线程发送数据时阻塞,造成核心业务响应延时。

我们来查一下KafkaProducer,java源码,其核心构造方法为:文章来源地址https://uudwc.com/A/WY2Ry

KafkaProducer

原文地址:https://blog.csdn.net/hanxiaotongtong/article/details/124778201

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年06月23日 04:19
攻克3D神器Blender的第四天-【环切、切割】
下一篇 2023年06月23日 04:21