【Kafka】01 基本概念

  1. 基本名词
  • Producer
  • Consumer
  • Broker--服务器-->集群
  • 主题和分区
    主题是逻辑上的概念,分区是可以追加的日志文件。
    offset是每个分区文件的偏移量,offset不跨越分区-->保证分区内消息有序。
    分区解决了写文件,单个机器IO成为瓶颈的问题。
  • 多副本机制
    副本是为了提升容灾能力。
    leader副本负责读写请求,follower负责与leader同步
    • AR(所有副本)=ISR(In-Sync Replicas) + OSR(Out-of-Sync Replicas)
    • HW(High Watermark)
      水位线,数据写到所有副本后,下一个位置的offset。消费者只能拉取HW之前的数据.
    • LEO(Log End Offset)
      下一条待写入消息的offset。
      ISR集合中最小的LEO为分区的HW。
  1. 服务端相关参数
    log.dirs为日志文件存放的目录。log.dirs比log.dir优先级高。只有log.dir由默认值,为/tmp/kafka-logs
  2. 简单示例
  • 命令行
    创建主题
# bin/kafka-topics.sh --zookeeper localhost:2181/kafka --create --topic topic-demo --replicationo-factor 3 --partitions 4

发送消息

# bin/kafka-console-consumer.sh --bootstrapserver localhost:9092 --topic topic-demo

消费消息

# bin/kafka-console-producer.sh --broker-list localhost:9092 --topic topic-demo

猜你喜欢

转载自www.cnblogs.com/suyeSean/p/11241899.html