一、客户端API
生产者(Producer)
send(ProducerRecord<K, V> record)
发送一条消息到broker,异步发送,无回调函数send(ProducerRecord<K, V> record, Callback callback)
发送一条消息到broker,异步发送,有回调函数partitionsFor(String topic)
获取topic的分区元数据metrics()
获取生产者的指标数据flush()
把缓存中的数据强制刷到磁盘initTransactions()
初始化当前生产者是事务型生产者beginTransaction()
开启事务commitTransaction()
提交事务abortTransaction()
事务回滚close()
关闭生产者
消费者(Consumer)
subscribe(Collection<String> topics)
订阅主题列表subscribe(Collection<String> topics, ConsumerRebalanceListener callback)
订阅主题列表,有一个重平衡监听器,当发生重平衡时触发subscribe(Pattern pattern)
根据正则表达式订阅主题subscribe(Pattern pattern, ConsumerRebalanceListener callback)
根据正则表达式订阅主题,有一个重平衡监听器,当发生重平衡时触发unsubscribe()
取消订阅主题subscription()
获取当前消费者订阅的主题列表listTopics()
获取所有主题的分区元数据assign(Collection<TopicPartition> partitions)
分配当前消费者的分区assignment()
获取分配到当前消费者的分区poll(Duration timeout)
拉取数据commitSync()
同步提交所有订阅主题的偏移量,提交失败会进行重试,直到提交成功或遇到不可重试的错误commitSync(Map<TopicPartition, OffsetAndMetadata> offsets)
同步提交指定主题分区的偏移量commitAsync()
异步提交所有订阅主题的偏移量commitAsync(OffsetCommitCallback callback)
异步提交所有订阅主题的偏移量,并且有回调函数commitAsync(Map<TopicPartition, OffsetAndMetadata> offsets, OffsetCommitCallback callback)
异步提交指定主题分区的偏移量,并且有回调函数position(TopicPartition partition)
获取将要提取的下一条记录的偏移量committed(Set<TopicPartition> partitions)
获取指定分区已消费消息的最大偏移量seek(TopicPartition partition, long offset)
重置偏移量到指定的位置seekToBeginning(Collection<TopicPartition> partitions)
重置偏移量到分区的第一条消息的位置seekToEnd(Collection<TopicPartition