苏默曦 2024-06-18 19:18 采纳率: 50%
浏览 4

Flink端到端的精确一次实验报错

操作步骤

img


我这边的操作:
生产者

img


消费者没接收到;

img


运行KafkaEOSDemo.java程序出现报错

img

  • 写回答

2条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-06-18 19:18
    关注

    引自免费微信小程序:皆我百晓生

    从你提供的信息来看,你在尝试实现Apache Flink的Exactly-Once语义时遇到了问题,并且在执行KafkaEOSDemo.java程序时遇到了异常。这个异常涉及到SLF4J日志框架的问题以及JobMaster启动失败的问题。让我们逐一解决这些问题。

    解决SLF4J日志框架问题

    错误信息中提到的“Failed to load class "org.slf4j.impl.StaticLoggerBinder"”,通常意味着你的项目中可能有多个日志框架的实现,导致SLF4J不知道应该使用哪一个。为了解决这个问题,确保你的项目中只有一个日志框架的实现。例如,如果你使用的是Logback,确保你的pom.xml文件中包含以下依赖:

    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.2.3</version>
    </dependency>
    

    并且移除任何可能存在的其他日志框架实现,比如slf4j-log4j12等。

    解决JobMaster启动失败问题

    接下来,关于“Could not start the JobMaster”的错误,这通常是因为Flink集群配置或者资源分配的问题。首先检查你的flink-conf.yaml配置文件,确保以下几点:

    1. JobManager的地址和端口是否正确配置。
    2. TaskManager的数量和资源分配是否符合你的任务需求。
    3. 网络和安全配置是否允许Flink组件之间正常通信。

    此外,你可能需要检查你的Flink和Kafka版本是否兼容,以及你的KafkaEOSDemo.java中的配置是否正确。例如,确保你的Flink作业正确地设置了Checkpointing策略和Exactly-Once语义。

    调整KafkaEOSDemo.java程序

    在你的KafkaEOSDemo.java中,确保你已经正确设置了Kafka Consumer的隔离级别为read_committed。例如:

    Properties props = new Properties();
    props.setProperty("bootstrap.servers", "node2:9092");
    props.setProperty("group.id", "test-group");
    props.setProperty("enable.auto.commit", "false");
    // 设置隔离级别为读已提交
    props.setProperty("isolation.level", "read_committed");
    props.setProperty("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
    props.setProperty("value.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
    
    KafkaConsumer<String, String> consumer = new KafkaConsumer<>(props);
    consumer.subscribe(Arrays.asList("topic1"));
    

    进一步排查

    如果上述建议没有解决问题,你可能需要更深入地查看Flink JobManager的日志文件,查找具体的错误原因。通常,这些日志文件位于Flink安装目录下的log文件夹内。

    如果问题仍然存在,你可能需要提供更多的错误信息或者详细的代码片段,以便于更准确地定位问题所在。同时,检查你的Kafka服务器状态,确保它正在运行并且可以接受和发送消息。

    希望这些建议能帮助你解决遇到的问题。如果还有其他疑问,欢迎继续提问。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月18日

悬赏问题

  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见
  • ¥15 一共有五道问题关于整数幂的运算还有房间号码 还有网络密码的解答?(语言-python)
  • ¥20 sentry如何捕获上传Android ndk 崩溃
  • ¥15 在做logistic回归模型限制性立方条图时候,不能出完整图的困难
  • ¥15 G0系列单片机HAL库中景园gc9307液晶驱动芯片无法使用硬件SPI+DMA驱动,如何解决?