kafka发送消息时,会将多条消息组成一个batch再进行批量发送,这样做的目的是可以提高kafka的吞吐量,不必每次来一条消息就进行一次网络请求,那么这些批量的消息发送出去后,必然还存在于内存中,等待的将是JVM的GC,当消息越来越多时,带来的问题就是频繁的GC,也就是会造成频繁的STW。

针对上述问题,于是kafka就设计出了缓冲池的概念,kafka先将一片内存区域固定下来专门用于存放batch,每次从缓冲池申请batch,使用完后再还回缓冲池,这样就避免了每次对于batch的申请与回收,解决了JVM 频繁GC的问题。

当缓冲池满了以后,也就是说消息写入的速度大于向broker发送的速度,那么就阻塞写入,直到缓冲池中有空余内存时为止。

kafka内存缓冲池机制造成的频繁GC问题相关推荐

  1. 【Python】之内存管理机制

    前言 想要了解python,就必须要了解Python的内存管理机制,不然我们就会经常踩进一些莫名其妙的坑! Python的内存管理机制共分为三部分:1.引用计数 2.垃圾回收 3.内存池机制 在了解以 ...

  2. python的内存管理机制及调优手段_Python的内存管理机制及调优手段?

    转载自 http://kkpattern.github.io/2015/06/20/python-memory-optimization-zh.html 准备工作 为了方便解释Python的内存管理机 ...

  3. Python内存管理机制及优化简析(转载)

    from:http://kkpattern.github.io/2015/06/20/python-memory-optimization-zh.html 准备工作 为了方便解释Python的内存管理 ...

  4. jvm的内存分布,参数配置 和 GC处理机制

    转载 url: http://blog.csdn.net/ning109314/article/details/10411495 url:http://www.cnblogs.com/sunada20 ...

  5. 面试官问:为什么MySQL的索引不采用Kafka的索引机制

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 第一眼看到这个问题,也是很迷惑的,谁没事会问这种问题.然而,事实上 ...

  6. python内存管理机制_[转] Python内存管理机制

    一.引用计数 1.变量与对象 变量赋值的时候才创建,它可以指向(引用)任何类型的对象 python里每一个东西都是对象,它们的核心就是一个结构体:PyObject 变量必须先赋值,再引用. 比如,你定 ...

  7. 什么是 Python 的 「内存管理机制」?

    什么是内存管理器(what) Python作为一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言,与大多数编程语言不同,Python中的变量无需事先申明,变量无需指定类型,程序员无需关心内存 ...

  8. python中内存管理机制一共分为多少层_python 内存管理机制

    内存管理机制 ​python中万物皆对象,python的存储问题是对象的存储问题,并且对于每个对象,python会分配一块内存空间去存储它 ​Python的内存管理机制:引入计数.垃圾回收.内存池机制 ...

  9. JVM内存管理机制线上问题排查

    本文主要基于"深入java虚拟机"这本书总结JVM的内存管理机制,并总结了常见的线上问题分析思路.文章最后面是我对线上故障思考的ppt总结. Java内存区域 虚拟机运行时数据区如 ...

最新文章

  1. arm-linux-ld中的参数,arm-linux-ld指令详解
  2. 创新工场南京人工智能研究院执行院长冯霁:联邦学习中的安全问题
  3. 王健林:中国房地产不会崩盘 进入十年平稳发展期
  4. 数据竞赛:如何小号作弊
  5. concat合并的数组会有顺序么_超全的JS常用数组方法整理
  6. 7-6 哈利·波特的考试 (8 分)
  7. css vue 内联_vue ssr css内联样式和link标签重复
  8. Stop Staring: Facial Modeling and Animation Done Right
  9. java mocked_java – 使用PowerMock的Mocked私有方法,但是底层方法仍然被调用
  10. app登录的token设计
  11. 【数据结构和算法】赫夫曼树 | 实战演练(二)
  12. 【仿淘宝首页】前端网页模板,大学生前端作业分享,html5+css电商网站模板,包含js动效
  13. 类模板和函数模板的区别及其应用案例 c++ 简单易懂
  14. 服务器安装macos虚拟机,windows服务器装macos虚拟机系统
  15. POJ3238生日相同问题C++
  16. Linux命令--top
  17. 华为各类工程师通信基础面试题库以及答案
  18. 拼多多用户数超越淘宝,电商市场正变成腾讯与阿里的对决
  19. 《OSPF和IS-IS详解》一6.1 OSPF数据库同步
  20. 广东高科技产业商会会长王理宗:回眸经典故事重燃青春岁月

热门文章

  1. 互联网广告人--联合御寒--品牌,代理,平台,达人 多方携手御寒
  2. input框禁止输入的四种方式
  3. [计算机网络]交换机环路问题
  4. R语言实现数据按照行排序
  5. 《如何阅读一本书》做一名“棒球赛中的捕手”
  6. 第05章 Go语言函数(Go语言func)
  7. 产品设计公司的头脑风暴是什么?
  8. 《计算机网络》第7版——知识摘要总结
  9. 【NOIP2014】提高组初赛答案加解析
  10. Oracle如何切换session,oracle修改process和session数