Kafka集群優化篇-調整broker的堆內存(heap)案例實操


                Kafka集群優化篇-調整broker的堆內存(heap)案例實操

                                           作者:尹正傑

版權聲明:原創作品,謝絕轉載!否則將追究法律責任。

 

 

 

 

 

一.查看kafka集群的broker的堆內存使用情況 

1>.使用jstat查看gc的信息([root@kafka116 ~]# jstat -gc 12698 1s 30)

參數說明:S0C:第一個幸存區的大小
  S1C:第二個幸存區的大小
  S0U:第一個幸存區的使用大小
  S1U:第二個幸存區的使用大小
  EC:伊甸園區的大小
  EU:伊甸園區的使用大小
  OC:老年代大小
  OU:老年代使用大小
  MC:方法區大小
  MU:方法區使用大小
  CCSC:壓縮類空間大小
  CCSU:壓縮類空間使用大小
  YGC:年輕代垃圾回收次數
  YGCT:年輕代垃圾回收消耗時間
  FGC:老年代垃圾回收次數
  FGCT:老年代垃圾回收消耗時間
  GCT:垃圾回收消耗總時間

2>.使用jmap查看kafka當前的堆內存信息([root@kafka116 bin]# jmap -heap 12698)

 

  經過上面兩個圖的分析,我們要觀察伊甸區,幸存區以及年老代總體的使用量,發現他們的使用率都是80%以上呢!而且gc的評論是74萬多次,過多的gc會將服務器的性能降低。因此考慮調大Kafka集群的堆內存(heap)是刻不容緩的事情。好,接下來我們如何去調試呢?以及將對內存調大應該注意那些事項呢?

  第一:kafka集群不要集體修改,要一台一台的去調整,由於我有5台broker,它允許我掛掉2台broker;

  第二:修改kafka-server-start.sh啟動腳本,建議先改成15G(我的kafka集群的配置相對較低,32G內存,32core,80T硬盤),如果還是不夠的話可以考慮繼續加大heap內存的配置;

 

二.對kafka進行調優案例實操

1>.查看默認的配置

2>.修改kafka啟動腳本的配置文件

 

3>.重啟當前broker的Kafka服務

[root@kafka116 bin]# kafka-server-stop.sh                                       #停止當前的kafka進程
[root@kafka116 bin]# 
[root@kafka116 bin]# kafka-server-start.sh -daemon /soft/kafka/config/server.properties          #啟動當前的kafka進程
[root@kafka116 bin]# 
[root@kafka116 bin]# 
[root@kafka116 bin]# jps                                                  #查看kafka進程是否啟動
5460 Kafka
4246 ProdServerStart
23014 Jps
[root@kafka116 bin]# 

4>.查看調優后的內存

5>.查看調整后的JVM使用情況

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM