Kafka:主题创建、分区修改查看、生产者、消费者

这篇具有很好参考价值的文章主要介绍了Kafka:主题创建、分区修改查看、生产者、消费者。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Kafka后台操作

1)主题

1.创建主题

./bin/kafka-topics.sh --create --bootstrap-server hadoop102:9092 --replication-factor 3 --partitions 1 --topic second

2.查看所有主题

./bin/kafka-topics.sh --list --bootstrap-server hadoop102:9092

3.查看详细主题

./bin/kafka-topics.sh --bootstrap-server hadoop102:9092 --describe --topic test

Kafka:主题创建、分区修改查看、生产者、消费者

序号从0开始计算

Partition:分区数,该主题有3个分区

Replica:副本数,该主题有3个副本

Leader:副本数中的主的序号,生产消费的对象

2)分区

1.修改分区数

./bin/kafka-topics.sh --bootstrap-server hadoop102:9092 --alter --partitions 3 --topic test4

修改的分区数量不可以小于或者等于当前主题分区的数量,否则会报错

在根目录kafka-logs文件中存放了储消费者组的偏移量信息的文件。所有创建的主题都会存放在该文件夹中

Kafka:主题创建、分区修改查看、生产者、消费者

__consumer_offsets-xx:当中的xx是根据分区主题数量来确定的,里面存储了当前分区的消费者组的偏移量信息。例如个话题有5个分区,那么他就会有5个对应的文件。而-xx前面代表的是主题的名称。

在创建Kafka集群时__consumer_offsets默认会创建50个分区,文件内的 __consumer_offsets-xx的数量应该大于50个

选择一个文件进去查看

Kafka:主题创建、分区修改查看、生产者、消费者

log: 分区的日志文件,用于存储消费者组的偏移量信息。每个日志文件由多个消息记录组成,其中包含了消费者组的偏移量提交记录。

index:分区的索引文件,用于加速偏移量查询操作。索引文件保存了消息偏移量和日志文件中的物理偏移量之间的映射关系。

timeindex:分区的时间索引文件,用于加速偏移量查询操作。时间索引文件保存了消息的时间戳和日志文件中的物理偏移量之间的映射关系。

snapshot:分区的快照文件,用于记录偏移量提交的快照信息。快照文件包含了偏移量提交记录的摘要信息,以便在恢复时加快恢复速度。

3)生产者

1.启动生产者

./bin/kafka-console-producer.sh --broker-list hadoop102:9092 --topic first

kafka-console-producer.sh 是 Kafka 提供的一个 shell 脚本,用于在命令行中启动一个控制台生产者,用于向 Kafka 集群发送消息

--broker-list: 指定 Kafka brokers 的地址和端口号,用冒号分隔

--topic: 指定要发送消息的主题名。

4)消费者组

1.查看消费者组

./bin/kafka-consumer-groups.sh --bootstrap-server hadoop102:9092 --list

2.创建消费者从头开始读并设置消费者组

./bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --topic first --from-beginning --group testGroup

bootstrap-server :参数用于指定 Kafka 集群的地址

topic :参数用于指定要消费的主题名称

group :参数用于指定消费者组的名称

from-beginning :读取最早的偏移量

group :指定消费者组名称

3.创建消费者时设置偏移量为最新

./bin/kafka-consumer-groups.sh --bootstrap-server hadoop102:9092 --group testGroup --topic first --reset-offsets --to-latest --execute
#启动
./bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --topic first  --group testGroup

reset-offsets:表示要重置偏移量

to-latest:表示将偏移量移到最新位置

execute:表示执行偏移量重置操作

执行偏移量重置后,会移动到最新位置,如果需要修改,得重新设置,谨慎操作。

Kafka:主题创建、分区修改查看、生产者、消费者

NEW-OFF:表示设置的新的偏移量

4.创建消费者时设置具体的偏移量数据(重置偏移量到6)

./bin/kafka-consumer-groups.sh --bootstrap-server hadoop102:9092 --group testGroup --topic first --reset-offsets --to-offset 6 --execute
#启动
./bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --topic first  --group testGroup

Kafka:主题创建、分区修改查看、生产者、消费者

5.创建消费者时设置相对的偏移量数据(偏移量向前偏移2个位置)

./bin/kafka-consumer-groups.sh --bootstrap-server hadoop102:9092 --group testGroup --topic first --reset-offsets --shift-by 2 --execute

Kafka:主题创建、分区修改查看、生产者、消费者

reset-offsets:表示要重置偏移量

to-offset:参数可以将偏移量重置到指定的偏移量位置

shift-by:参数可以将偏移量进行相对偏移量重置

6.查看消费者组主具体信息

./bin/kafka-consumer-groups.sh --bootstrap-server hadoop102:9092 --describe --group mentugroup

Kafka:主题创建、分区修改查看、生产者、消费者

TOPIC:消费主题名称

PARTITION:分区Id

CURRENT-OFFSET: 当前消费偏移量,即消费者当前消费到的消息的偏移量

LOG-END-OFFSET: 分区的最新偏移量,即分区中最新消息的偏移量

LAG:消费者落后于最新偏移量的消息数量,即LAG = LOG-END-OFFSET - CURRENT-OFFSET(最新-当前)

CONSUMER-ID:消费者ID

HOST:消费者所在主机

CLIENT-ID:消费者客户端ID

7.删除消费者组文章来源地址https://www.toymoban.com/news/detail-507559.html

./bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group testGroupNew1 --delete

到了这里,关于Kafka:主题创建、分区修改查看、生产者、消费者的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Kafka 之生产者与消费者基础知识:基本配置、拦截器、序列化、分区器

    kafaf集群地址列表:理论上写一个节点地址,就相当于绑定了整个kafka集群了,但是建议多写几个,如果只写一个,万一宕机就麻烦了 kafka消息的key和value要指定序列化方法 kafka对应的生产者id 使用java代码表示则为以下代码:  可使用 retries 参数 进行设置,同时要注意记住两

    2024年02月05日
    浏览(44)
  • Kafka系列:查看Topic列表、消息消费情况、模拟生产者消费者

    执行topic删除命令时,出现提示 这条命令其实并不执行删除动作,仅仅是在zookeeper上标记该topic要被删除而已,同时也提醒用户一定要提前打开delete.topic.enable开关,否则删除动作是不会执行的。 解决办法: a)在server.properties中设置delete.topic.enable参数为ture b)如下操作: 1.登

    2023年04月26日
    浏览(32)
  • Linux安装Kafka,创建topic、生产者、消费者

    1.创建安装目录/usr/local/kafka mkdir /usr/local/kafka 2.进入安装包目录 cd /usr/local/kafka  3.下载安装包 wget https://downloads.apache.org/kafka/3.3.1/kafka_2.12-3.3.1.tgz 4.解压安装包 tar -zxvf kafka_2.12-3.3.1.tgz 5.进入cd kafka_2.12-3.3.1目录 cd kafka_2.12-3.3.1/ 6.修改zookeeper配置 cat ./config/zookeeper.properties | grep

    2023年04月17日
    浏览(31)
  • 三、Kafka生产者1---Kafka生产者初始化-new KafkaProducer

    概述 本文主要是分享Kafka初始化生产者的 大体过程 初始化过程中会新建很多对象,本文暂先分享部分对象 1.分区器---Partitioner partitioner 2.重试时间---long retryBackoffMs 3.序列化器---SerializerK keySerializer,SerializerV valueSerializer 4.拦截器--- ListProducerInterceptorK, V interceptorList 5.累加器-

    2024年03月14日
    浏览(46)
  • Kafka生产者原理 kafka生产者发送流程 kafka消息发送到集群步骤 kafka如何发送消息 kafka详解

    kafka尚硅谷视频: 10_尚硅谷_Kafka_生产者_原理_哔哩哔哩_bilibili ​      1. producer初始化:加载默认配置,以及配置的参数,开启网络线程      2. 拦截器拦截      3. 序列化器进行消息key, value序列化      4. 进行分区      5. kafka broker集群 获取metaData      6. 消息缓存到

    2024年02月11日
    浏览(30)
  • (三)Kafka 生产者

    创建一个 ProducerRecord 对象,需要包含目标主题和要发送的内容,还可以指定键、分区、时间戳或标头。 在发送 ProducerRecord 对象时,生产者需要先把键和值对象序列化成字节数组,这样才能在网络上传输。 如果没有显式地指定分区,那么数据将被传给分区器。分区器通常会基

    2024年02月09日
    浏览(28)
  • Kafka 生产者

    目录 一、kafka生产者原理 二、kafka异步发送 配置kafka 创建对象,发送数据 带回调函数的异步发送 同步发送   三、kafka生产者分区 分区策略 指定分区:  指定key: 什么都不指定: 自定义分区器 四、生产者提高吞吐量 五、数据的可靠性 ACK应答级别 数据完全可靠条件 可靠性

    2023年04月15日
    浏览(31)
  • 三、Kafka生产者

    1 发送原理 在消息发送的过程中,涉及到了两个线程——main 线程和 Sender 线程。在 main 线程中创建了一个双端队列 RecordAccumulator。main 线程将消息发送给 RecordAccumulator,Sender 线程不断从 RecordAccumulator 中拉取消息发送到 Kafka Broker 【RecordAccumulator缓冲的结构: 每一个分区对应一

    2024年02月12日
    浏览(28)
  • Kafka-生产者

    Kafka在实际应用中,经常被用作高性能、可扩展的消息中间件。 Kafka自定义了一套网络协议,只要遵守这套协议的格式,就可以向Kafka发送消息,也可以从Kafka中拉取消息。 在实践生产过程中,一套API封装良好、灵活易用的客户端可以避免开发人员重复劳动,提高开发效率,也

    2024年01月20日
    浏览(25)
  • kafka学习-生产者

    目录 1、消息生产流程 2、生产者常见参数配置 3、序列化器 基本概念 自定义序列化器 4、分区器 默认分区规则 自定义分区器 5、生产者拦截器 作用 自定义拦截器 6、生产者原理解析 在Kafka中保存的数据都是字节数组。 消息发送前,需要将消息序列化为字节数组进行发送。

    2024年02月09日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包