
Kafka引擎
zhongyuankai
done
展开
-
[Kafka 引擎]Kafka Producer 内存管理
码字不易,先关/赞在看 个人博客地址 KafkaProducer内存管理 kafka生产者send一条记录(record)后并没有直接发送到broker,而是先将它保存到内存(RecordAccumulator)中,用于压缩之后批量发送,这里内存直接分配在堆上,如果对它不加以限制在消息生产速率足够高时很可能频繁出现fullgc乃至oom,另一方面频繁的内存申请和释放操作也很吃系统资源,因此Kafka自建了内存池BufferPool管理内存。 ByteBuffer 介绍 内存的创建和释放是比较消耗资源的,为了原创 2020-07-19 14:44:18 · 970 阅读 · 0 评论 -
[Kafka引擎] Producer 端源码分析
Producer 端源码分析总结 消息发送的流程图: 源码体现: KafkaProduce{ send(){ // 对消息进行拦截处理 ProducerRecord<K, V> interceptedRecord = this.interceptors.onSend(record); doSend(){ // 1. 确认数据要发送到的 topic 的 metadata 是可...原创 2020-05-03 16:37:13 · 237 阅读 · 0 评论