Kafka实战中深入理解

一、kakfka的基本概念

1.1下面我们会从 个角度分析Kafka 的几个基本概念,并尝试解决下面 个问题

        Kafka 主题与分区内部是如 存储的 ,它 有什么特点?
        与传统的消息系统相比 Kafka 的消 费模型有什么优点?
        Kafka 如何 实现分布式的数据存储与数据读取?

1.2分区模型

1.3消费模型

       消息 由生产者发布到 fk 集群后,会被消费者消费。

消息的两种消费模型:

推送模型( push) 和拉取模型( pull
 

生产者发布消息到分区的两种方式:

1.通过随机方式将请求负载到不同的消息代理节点(分区partition)

2.使用分区语义函数将相同键的所有消息发布到同一分区,对于分区语义,Kafka暴露了一个接口,允许用户指定消息的键如何参与分区。比如,我们可以将用户编号作为消息的键,因为对相同用户编号散列后的值是罔定的,所以对应的分区也是固定的。

消费组实例 

查看消费组下消费者 偏移量信息:
其中 PARTITION 表示分区编号 CURRENT-OFFSET 表示当前消费进度偏移量,LOG-END-OFFSET日志结束总偏移量,  Lag 表示落后的数据量  CONSUMER-ID  表示分区归哪个消费者所有test-01_hadoop01-1605790352267-5997c31c
[root@hadoop01 kafka_2.11-1.0.0]# bin/kafka-consumer-groups.sh --zookeeper hadoop01:2181 --describe --group test-01
Note: This will only show information about consumers that use ZooKeeper (not those using the Java consumer API).


TOPIC                          PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG        CONSUMER-ID                                       
first01                        0          29              32              3          -                                                 
first                          0          8               8               0          -                                                 
first02                        0          3               3               0          test-01_hadoop01-1605790352267-5997c31c           
first02                        1          3               3               0          test-01_hadoop01-1605790352267-5997c31c  

查看所有消费组名称:

[root@hadoop01 kafka_2.11-1.0.0]# bin/kafka-consumer-groups.sh --zookeeper hadoop01:2181 --list 
Note: This will only show information about consumers that use ZooKeeper (not those using the Java consumer API).

console-consumer-11288
test-01
perf-consumer-66096
console-consumer-34521
test-consumer-group
发布-订阅模式 。同一条消息会被多个消费组消费,每个消费组只有一个消费者,实现广播
队列模式 。只有一个消费组、多个消费者 一条消息只被消费组 一个消费者消费 ,实现 单播

Kafka源码包

 

二、Kafka生产者--向Kafka写入数据 

2.1发送消息的3种方式:

2.1.1.发送消息

2.2.2.同步发送消息

2.2.3.异步发送消息

2.2 生产者配置

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

任错错

如果对您有帮助我很开心

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值