kafka工具类

背景

在做数据开发时,经常预见要查看kafka 元数据的一些信息,比如有多少个topic、某个topic中有多少分区、创建topic、删除topic等等。

代码

废话不多,直接撸。
我们的maven版本为:

 <dependency>
      <groupId>org.apache.kafka</groupId>
      <artifactId>kafka_2.13</artifactId>
      <version>2.7.0</version>
  </dependency>

首先我们可以定义一个接口

import org.apache.kafka.clients.consumer.KafkaConsumer;
import org.apache.kafka.common.PartitionInfo;

import java.util.List;

public interface KafkaClientImp {
   

    /**
     * 创建kafka
     *
     * @param topicName   topic名称
     * @param partition   分区数 建议小于12个
     * @param replication 副本数量
     * @return 是否创建成功
     */
    boolean createTopic(String topicName, Integer partition, short replication);

    /**
     * topic 是否存在
     *
     * @param topicName topic名称
     * @return true 存在  false不存在
     */
    boolean isTopic(String topicName);

    /**
     * 获取topic列表
     *
     * @return
     */
    List<String> getTopicList();

    /**
     * 获取topic 的分区数
     *
     * @param consumer kafka消费者
     * @return
     */
    List<PartitionInfo> getPartitionNum(KafkaConsumer<String, String> consumer, Object topicName);


    /**
     * 删除topic
     *
     * @param topicName
     * @return
     */
    boolean deleteTopic(String topicName);


}

然后我们写一个KafkaUtils类来实现接口。

import com.xxx
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值