登录 |  注册
首页 >  中间件 · 框架 >  Kafka基础教程·入门学习笔记 >  Kafka主题的创建和修改

Kafka主题的创建和修改

kafkatopics.jpg

主题的创建

创建主题的更加推荐采用脚本的方式,位置为:

./bin/kafka-topics.sh

# 下面是通过命令指定分区数和副本数

./kafka-topics.sh  --zookeeper localhost:2181  --create   --topic testTopic --partitions 1  --replication-factor 1

PS: 创建topic时,分区数为num.partitions(默认1),副本因子为default.replication.factor

其中日志路径下查看broker的分配信息,也可以在ZooKeeper中获取分配信息:

[zk: localhost:2181(CONNECTED) 3] get /brokers/topics/testTopic-1
{"version":1,"partitions":{"0":[0]}}
cZxid = 0xd3
ctime = Sat Jul 20 09:57:21 CST 2019
mZxid = 0xd3
mtime = Sat Jul 20 09:57:21 CST 2019
pZxid = 0xd4
cversion = 1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 36
numChildren = 1

afka-topics.sh可以执行多种类型的topic操作,包括create、delete、alter、list、describe。

主题的修改

# create 新增主题

./kafka-topics.sh  --zookeeper localhost:2181  --create   --topic testTopic --partitions 1  --replication-factor 1

# 删除主题

./kafka-topics.sh  --zookeeper   localhost:2181  --delete --topic testTopic-2
Topic testTopic-2 is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.

自重删除不是立刻删除,而且delete.topic.enable为false的时候,删除操作是没有作用的。

主题的查看

查看主题详情:展示主题,分区数,副本数(AR),Leader副本所在broker,ISR等信息

./kafka-topics.sh --zookeeper localhost:2181 --describe --topic testTopic
Topic:testTopic PartitionCount:1    ReplicationFactor:1 Configs:
    Topic: testTopic    Partition: 0    Leader: 0   Replicas: 0 Isr: 0

如果没有指定--topic则会展示全部主题信息

Java接入kafka代码

有相应的Java API对应kafka-topics.sh脚本实现的功能。

public class CreateTopic {
    public static final String BROKER_LIST = "192.168.13.53:2181";
    public static void main(String[] args) {
        String[] options = new String[]{
                "--zookeeper", BROKER_LIST,
                "--create",
                "--replication-factor", "1",
                "--partitions", "1",
                "--topic", "topic-1"
        };
        TopicCommand.main(options);
    }
}

原文链接: https://www.yukx.com/kafkamq/article/details/2115.html 优科学习网Kafka主题的创建和修改

<<上一课程
推荐文章
  • 一.安装并启动sendmailyum install -y sendmail systemctl start sendmail二.修改Grafana配置文件,设置发件人vim /etc/grafana/grafana.ini在[smtp]标签下修改配置[smtp] enabled = true ho
  • 想用最简单的方式去理解Elasticsearch能为你做什么,那就是使用它了,让我们开始吧!安装并运行Elasticsearch安装Elasticsearch之前,你需要先安装一个较新的版本的Java,最好的选择是,你可以从www.java.com获得官方提供的最新版本的Java。之后,你可以从el
  • 简介:Elasticsearch是一个分布式、RESTful风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为ElasticStack的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。版本说明Java环境:JDK1.8.0Elasticsearch:7.2.1OS环境:wi
  • Java9、Java10、Java12和Java13均为短期版本。我们建议您不要使用以上版本,除非您准备好应对这种快速发布节奏。有关JVM支持,请参见Oracle的时间表,网址为:http://www.oracle.com/technetwork/java/eol-135779.html**Elas
  • Elasticsearch是由ShayBanon发起的一个开源搜索服务器项目,2010年2月发布。迄今,该项目已发展成为搜索和数据分析解决方案领域的主要一员,广泛应用于声名卓著或鲜为人知的搜索应用程序。此外,由于其分布式性质和实时功能,许多人把它作为文档数据库。Elasticsearch看名字就能大
  • XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。据最新统计, 该系统已调度约100万次,表现优异。新接入应用推荐使用最新版本,因为经过数十个版本的更新,系统的任务模型、UI交互模型以及底层调度通讯模型都有了较大的优化和提升,核心功能更加稳定高效.
学习大纲