开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

flink 1.16 对kafka 0.10 ,能消费数据,但不能写入数据,可以指定具体版本么?

flink 1.16 对kafka 0.10 ,能消费数据,但不能写入数据,可以指定具体版本么?

展开
收起
爱喝咖啡嘿 2022-12-09 15:51:26 337 0
1 条回答
写回答
取消 提交回答
  • 是的,您可以为 Flink 1.16 指定特定的 Kafka 0.10 版本。

    要指定 Kafka 版本,请在创建 Kafka 消费者或生产者时使用 KafkaVersion 枚举。例如:

    消费者:

    KafkaConsumer consumer = KafkaConsumer.builder()
    .setBootstrapServers("localhost:9092")
    .setGroupId("my-group")
    .setKafkaVersion(KafkaVersion.KAFKA_0_10)
    .build();
    生产者:

    KafkaProducer producer = KafkaProducer.builder()
    .setBootstrapServers("localhost:9092")
    .setKafkaVersion(KafkaVersion.KAFKA_0_10)
    .build();
    注意:

    Flink 1.16 及更高版本不再支持 Kafka 0.10。
    Kafka 0.10 已于 2021 年 12 月 15 日达到生命周期结束 (EOL)。建议升级到较新的 Kafka 版本,例如 2.8 或更高版本。
    如果您使用 Kafka 0.10,则可能需要使用较旧版本的 Flink,例如 Flink 1.15 或更低版本。

    其他选项:

    如果您无法升级到较新的 Kafka 版本,另一种选择是使用 Flink Kafka Connector 的自包含版本。此版本包含 Kafka 0.10 客户端,因此您不必自己手动管理 Kafka 版本。

    要使用自包含版本,请在您的项目中添加以下依赖项:


    org.apache.flink
    flink-connector-kafka_${scala.version}
    ${flink.version}

    然后,您可以像往常一样创建 Kafka 消费者或生产者,而无需显式指定 Kafka 版本。

    2024-02-27 18:00:39
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Java Spring Boot开发实战系列课程【第16讲】:Spring Boot 2.0 实战Apache Kafka百万级高并发消息中间件与原理解析 立即下载
    MaxCompute技术公开课第四季 之 如何将Kafka数据同步至MaxCompute 立即下载
    消息队列kafka介绍 立即下载