与原生KafkaConsumer接口适配说明
原生KafkaConsumer |
类型 |
DISKafkaConsumer |
说明 |
---|---|---|---|
Set<TopicPartition> assignment() |
接口 |
支持 |
获取consumer消费的通道与分区信息 |
Set<String> subscription() |
接口 |
支持 |
获取consumer已订阅的通道名称 |
void assign(Collection<TopicPartition> var1) |
接口 |
支持 |
分配指定的分区 |
void subscribe(Collection<String> var1) |
接口 |
支持 |
订阅指定的通道 |
void subscribe(Collection<String> var1, ConsumerRebalanceListener var2) |
接口 |
支持 |
订阅指定的通道并支持ConsumerRebalanceListener回调 |
void subscribe(Pattern var1, ConsumerRebalanceListener var2) |
接口 |
支持 |
订阅所有匹配通配符的通道并支持ConsumerRebalanceListener回调 |
void unsubscribe() |
接口 |
支持 |
取消所有订阅 |
ConsumerRecords<K, V> poll(long var1) |
接口 |
支持 |
获取消息,但消息当中未实现 checksum(消息的CRC32校验值)、serializedKeySize(key序列化后的字节长度)、serializedValueSize(key序列化后的字节长度)。 |
void commitSync() |
接口 |
支持 |
同步提交当前消费的offset |
void commitSync(final Map<TopicPartition, OffsetAndMetadata> offsets) |
接口 |
支持 |
同步提交指定的offset |
void commitAsync() |
接口 |
支持 |
异步提交当前消费的offset |
public void commitAsync(OffsetCommitCallback callback) |
接口 |
支持 |
异步提交当前消费的offset并支持OffsetCommitCallback回调 |
void commitAsync(Map<TopicPartition, OffsetAndMetadata> offsets, OffsetCommitCallback callback) |
接口 |
支持 |
异步提交指定的offset并支持OffsetCommitCallback回调 |
void seek(TopicPartition partition, long offset) |
接口 |
支持 |
给分区设置指定的offset |
void seekToBeginning(Collection<TopicPartition> partitions) |
接口 |
支持 |
分区的offset设置为最旧的值 |
void seekToEnd(Collection<TopicPartition> partitions) |
接口 |
支持 |
分区的offset设置为最新的值 |
long position(TopicPartition partition) |
接口 |
支持 |
获取分区当前已消费数据的offset |
OffsetAndMetadata committed(TopicPartition partition) |
接口 |
支持 |
获取分区已提交的offset |
List<PartitionInfo> partitionsFor(String topic) |
接口 |
支持 |
获取通道的分区信息,但PartitionInfo里面的leader, replicas, inSyncReplicas未实现。 |
Map<String, List<PartitionInfo>> listTopics() |
接口 |
支持 |
获取所有的通道信息,但PartitionInfo里面的leader, replicas, inSyncReplicas未实现。 |
void pause(Collection<TopicPartition> partitions) |
接口 |
支持 |
暂停消费分区 |
void resume(Collection<TopicPartition> partitions) |
接口 |
支持 |
恢复消费分区 |
Set<TopicPartition> paused() |
接口 |
支持 |
获取所有已暂停消费的分区 |
close() |
接口 |
支持 |
关闭consumer |
Map<MetricName, ? extends Metric> metrics() |
接口 |
不支持 |
获取统计信息 |
wakeup() |
接口 |
不支持 |
内部实现原理不一样,不需要。 |
group.id |
参数 |
支持 |
消费组ID |
client.id |
参数 |
支持 |
每个consumer的client.id必须唯一,如果不配置client.id, dis kafka consumer会生成一个uuid作为client.id。 |
key.deserializer |
参数 |
支持 |
含义与kafka设置相同,但默认值为StringDeserializer (kafka必须配置)。 |
value.deserializer |
参数 |
支持 |
含义与kafka设置相同,但默认值为StringDeserializer (kafka必须配置)。 |
enable.auto.commit |
参数 |
支持 |
同kafka的默认设置,默认为true
|
auto.commit.interval.ms |
参数 |
支持 |
自动提交offset的周期(毫秒),默认值5000。 |
auto.offset.reset |
参数 |
支持 |
同Kafka的默认配置,默认为latest。 此值用于没有初始偏移量或者偏移量不正确的情况下,自动设置offset位置:
|
其他参数 |
参数 |
不支持 |
- |