Kafka是如何优化JVM Full GC的

在 Kafka客户端,会有缓冲池的机制
Kafka客户端发送的消息不会立马持久化到磁盘当中。
而是会放到一个Batch中当Batch填满之后,才会持久化到磁盘中
当遇到高并发的时候,所有的Batch空间瞬间被填满,还没持久化,就会触发JVM GC
Kafka的处理策略是创建了个缓冲池 放了很多块内存空间,如果你需要新的 Batch 了,就可以直接从
这个缓冲池拿走内存空间就 ok 了?
然后如果 Batch 发送出去了之后,再把内存空间收回来就好了
这种设计类似于Java中线程池。核心思想一空间换时间。

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页