kafka java API的使用】的更多相关文章

下面的测试代码使用的都是下面的topic: $ kafka-topics.sh --describe hadoop --zookeeper uplooking01:,uplooking02:,uplooking03: Topic:hadoop PartitionCount: ReplicationFactor: Configs: Topic: hadoop Partition: Leader: Replicas: ,, Isr: ,, Topic: hadoop Partition: Leade…
Kafka包含四种核心的API: 1.Producer API支持应用将数据流发送到Kafka集群的主题 2.Consumer API支持应用从Kafka集群的主题中读取数据流 3.Streams API支持数据流从输入主题转化到输出主题 4.Connect API支持实现持续地从一些源系统或应用划入Kafka或者从Kafka推入一些源系统或应用的接口. 我们这里主要讨论Producer API和Consumer API的使用,由于最新版的kafka java api中使用了一些jdk8的新特性…
Kafka官方提供了两个脚本来管理topic,包括topic的增删改查.其中kafka-topics.sh负责topic的创建与删除:kafka-configs.sh脚本负责topic的修改和查询,但很多用户都更加倾向于使用程序API的方式对topic进行操作.   上一篇文章中提到了如何使用客户端协议(client protocol)来创建topic,本文则使用服务器端的Java API对topic进行增删改查.开始之前,需要明确的是,下面的代码需要引入kafka-core的依赖,以kafka…
目前Kafka并没有提供直接的工具来帮助我们获取某个topic的当前总消息数,需要我们自行写程序来实现.下列代码可以实现这一功能,特此记录一下: /** * 获取某个topic的当前消息数 * Java 8+ only * * @param topic * @param brokerList * @return */ public static long totalMessageCount(String topic, String brokerList) { Properties props =…
import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Properties; import kafka.consumer.ConsumerConfig;import kafka.consumer.ConsumerIterator;import kafka.consumer.KafkaStream;import kafka.javaapi.consumer.ConsumerConne…
import java.util.HashMap; import java.util.List;import java.util.Map;import java.util.Properties; import org.junit.Test; import kafka.consumer.Consumer;import kafka.consumer.ConsumerConfig;import kafka.consumer.ConsumerIterator;import kafka.consumer.…
首先添加maven依赖 Kafka <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka_2.10</artifactId>      <version>0.8.2.2</version> </dependency> Spring <dependency>      <groupId>org.springfr…
使用Kafka的同学都知道,我们每次创建Kafka主题(Topic)的时候可以指定分区数和副本数等信息,如果将这些属性配置到server.properties文件中,以后调用Java API生成的主题将使用默认值,先改变需要使用命令bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic my-topic --config max.message.bytes=128000显示的修改,我们也希望将此过程在Producer调用之前通…
kafka内部所有的实现都是通过TopicCommand的main方法,通过java代码调用API,TopicCommand.main(options)的方式只能打印到控制台,不能转换到一个list. 下面讲解下如何转换为list: 1.查看主题(Topic) [命令方式]:bin/kafka-topics.sh --list --zookeeper 192.168.2.212:2181/kafka [JAVA API方式]: public static void main(String[] a…
很多用户都有这样的需求:实时监控某个topic各分区在broker上所占的磁盘空间大小总和.Kafka并没有提供直接的脚本工具用于统计这些数据. 如果依然要实现这个需求,一种方法是通过监控JMX指标得到分区当前总的日志大小,然后手动相加所有分区的值得出:另一种方法就是使用1.0.0引入的DescribeLogDirsRequest请求.本文即介绍如何通过Java API获取某broker上某topic总的空间大小,代码如下: package huxihx; import org.apache.k…