Kafka的消息收集器RecordAccumulate是如何实现高效长尾消息处理的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1190个文字,预计阅读时间需要5分钟。
在上一篇文章《连Producer端的主线模块运行原理都不清楚,就敢说自己是精通Kafka》中,我们介绍了Main Thread的工作原理,那么在本篇文章中,我们将继续介绍第二部分内容:……
〇、前言
在上一篇文章《连Producer端的主线程模块运行原理都不清楚,就敢说自己精通Kafka》中,我们介绍了Main Thread的工作原理,那么在本篇文章中,我们继续介绍第二部分内容:RecordAccumulator。
在介绍原理之前,大家再重温一下Producer端的整体架构,图示如下所示:
这个图看不懂没有关系,我们会在介绍Producer端原理时一一介绍每个部分的含义及其所复杂的功能。
一、RecordAccumulator
在上文中,我们介绍了主线程(Main Thread)的执行流程,当我们使用KafkaProducer发送消息的时候,消息会经过拦截器(Interceptor)、序列化器(Serializer)和分区器(Partitioner),最后会暂存到消息收集器(RecordAccumulator)中,那么,本节就来针对其进行介绍。
RecordAccumulator的主要作用是暂存Main Thread发送过来的消息,然后Sender Thread就可以从RecordAccumulator中批量的获取到消息,减少单个消息获取的请求次数,提升性能效率。
本文共计1190个文字,预计阅读时间需要5分钟。
在上一篇文章《连Producer端的主线模块运行原理都不清楚,就敢说自己是精通Kafka》中,我们介绍了Main Thread的工作原理,那么在本篇文章中,我们将继续介绍第二部分内容:……
〇、前言
在上一篇文章《连Producer端的主线程模块运行原理都不清楚,就敢说自己精通Kafka》中,我们介绍了Main Thread的工作原理,那么在本篇文章中,我们继续介绍第二部分内容:RecordAccumulator。
在介绍原理之前,大家再重温一下Producer端的整体架构,图示如下所示:
这个图看不懂没有关系,我们会在介绍Producer端原理时一一介绍每个部分的含义及其所复杂的功能。
一、RecordAccumulator
在上文中,我们介绍了主线程(Main Thread)的执行流程,当我们使用KafkaProducer发送消息的时候,消息会经过拦截器(Interceptor)、序列化器(Serializer)和分区器(Partitioner),最后会暂存到消息收集器(RecordAccumulator)中,那么,本节就来针对其进行介绍。
RecordAccumulator的主要作用是暂存Main Thread发送过来的消息,然后Sender Thread就可以从RecordAccumulator中批量的获取到消息,减少单个消息获取的请求次数,提升性能效率。

