将Kafka客户端从0.8.2.0升级到0.11.0.0

时间:2017-09-27 12:32:45

标签: apache-kafka kafka-producer-api

目前,在我公司,我们正在从Kafka 0.8迁移到0.11,经纪人迁移步骤并在kafka文档中明确说明here

我所困扰的是,升级kafka客户端(生产商,消费者,火花流),我找不到任何文档/文章清楚地列出了为客户提升所需的更改或步骤,我找到的只是java doc Producer Client

到目前为止我所做的是将我的gradle中的kafka客户端版本更改为kafka-clients-0.11.0.0,从编译的角度来看,所有内容都没有任何代码更改。

我寻求帮助的是,我应该注意哪些预期的问题,除了kafka-client版本之外的任何客户端更改指针?

1 个答案:

答案 0 :(得分:0)

我经历了大量的实验来完成这项工作。

对于消费者和生产者,我只使用了kafka消费者和生产者0.11.0。

诀窍部分是取代spark-streaming,spark-streaming最新版本仅支持kafka 0.10.X,其中不包含与新经纪人相关的任何更新。

我在这里推荐的,如果您要从头开始编写应用程序,并且您的主要目标是实时流式传输,请使用kafka-streaming API,它只是真棒!如果您已经拥有了spark streaming app(这是我的情况) ),你应该判断哪一个比另一个更重要的是卡住kafka-broker版本10.X和火花流式传输[experimental][1]顺便说一句。

在kafka中使用流媒体的好处不会引发以下情况:

  1. Kafka streaming是一个普通的jar,可以在任何java应用程序中注入,所以你不关心部署和环境
  2. 使用任何云服务提供商提供的任何游标集来使用kafka-streaming时,自动缩放非常简单,与扩展HDP群集不同。
  3. 使用像普罗米修斯这样的东西进行监控会容易得多。
相关问题