Kafka基礎知識總結筆記

《深入理解kafka核心設計與實踐原理》 讀書筆記

基本概念

producer
broker
consumer
topic
partition
segment

ISR-In-Sync Replica
OSR
HW

生產者

producer push模式

消費者

consumer/consumerGroup

主要參數配置

  • 生產者
    • zk
    • request.required.acks=-1(all),
    • producer.type=sync 同步發送,數據可靠性保證
  • 消費者
    • zk
  • broker
    • log.dirs:指定了broker需要使用的若干個文件目錄路徑
    • log.dir:單個路徑,補充上一個參數
  • topic
    • auto.create.topics.enable:是否允許自動創建topic
    • unclean.leader.election.enable:是否允許Unclean Leader選舉
    • auto.leader.rebalance.enable:是否允許定期進行Leader選舉
    • log.retention.{hour|minutes|ms}:控制一條消息數據被保存多長時間,優先級ms最高、minutes次之、hour最低
    • log.retention.bytes:指定broker爲消息保存的總磁盤容量大小,默認值爲-1,保存多少數據都可以
    • message.max.bytes:控制broker能夠接收的最大消息的大小,默認1000012,不到1KB,實際場景中需要設置一個比較大的值
  • jvm
    • KAFKA_HEAP_OPTS:指定堆大小
    • KAFKA_JVM_PREFORMANCE_OPTS:指定GC參數
    -Xmx8G -Xms8G -server -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC -Djava.awt.headless=true -Xloggc:/apps/service/kafka/logs/kafkaServer-gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=9999
    
  • os
    • ulimit
    • swap
    • flush-2-disk

主題、分區

日誌存儲

可靠性

kafka數據可靠性深度解讀

監控

常用監控指標

高級應用

參考資料

kafka原理和實踐-vivo

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章