kafka生产者API

原创
半兽人 发表于: 2016-05-11   最后更新时间: 2023-07-31 23:21:11  
{{totalSubscript}} 订阅, 91,133 游览

我们鼓励所有新开发的程序使用新的Java生产者,新的java生产者客户端比以前的Scala的客户端更快、功能更全面。通过下面的例子,引入Maven(可以更改新的版本号)。

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>3.5.1</version>
</dependency>

如何使用生产者,请点击这里

对以前传统Scala生产者API感兴趣的,可以在点击这里

更新于 2023-07-31
在线,4分钟前登录

人月圆. 4年前

请教个问题大神。我找了个其他方法java操作生产者和消费者,是org.springframework.kafka的spring-kafka,是直接boot的配置文件里,配置好了kafka的集群,生产者和消费者,消费者组ID,offset等的一系列东西,然后生产者是用的KafkaTemplate,send。消费者直接用@KafkaListener。但是没有找到设置其他参数的地方。现在就是不太懂我用的这个,和你上面用的这个kafka-clients,有啥区别吗,用哪个好一些

一样的,spring-boot包装了一层而已

Captain刘 5年前

你好,我请教两个生产者的问题。
1.背景:目前有一个主题test-topic,3个partition,平均分布在3个broker上。此时,生产者客户端可以正常的想服务器发送消息,消费消息。然后我又扩容了3个broker节点。防火墙上没有打通生产者客户端和broker的9092端口。此时test-topic使用9092端口生产消息,发现消费到的消息有丢失。
将9092端口防火墙打通后,该现象消息,恢复正常。想不通这是什么原因?

2.目前test-topic接口2M字节左右数据正常。当向该topic发送100M字节的数据说话,发现topic对应kafka-broker的节点有20s左右的不可用,数据下降后恢复,查看时次节点leader不可用了。我想问下,咱们的kafka不能限流吗?为什么直接导致了kafka服务挂掉,而不是丢消息。

半兽人 -> Captain刘 5年前

1、查看test-topic分区的分布情况,如果分区有联系到新增加的节点,就会有影响。
2、kafka有限流,不过要手动设置。20s不可用,检查下是否已经把整个kafka网络个吃完了?导致kafka集群之间的心跳也阻塞,而引起的不可用。

Captain刘 -> 半兽人 5年前

谢谢,第二个问题我在看一下。第一个问题分区没有在新增节点上。当时查过了,所以很疑惑。

查看kafka更多相关的文章或提一个关于kafka的问题,也可以与我们一起分享文章