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
kafka-design-apache
kafka-design-confluent

Netflix keystone介绍:

Netflix keystone
Netflix keystone
hadoop-ecosystem
AnatomyMapReduceJob
dolphinscheduler

posted on 2019-08-28 16:02  coding-now  阅读(39)  评论(0编辑  收藏  举报

导航