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

Flink CDC现在从Kafka读取消息显示source背压100这种应该怎样分析?

Flink CDC现在从Kafka读取消息显示source背压100这种应该怎样分析,具体应该从哪里看才能得出结论是Kafka压力太大发送的量小了还是集群本身的资源不够了?都是Kafka读取的,web ui的source都是黑的image.png如何分析背压原因,该从哪入手?每次读取才几百?

展开
收起
真的很搞笑 2023-12-13 21:21:02 97 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在Flink CDC从Kafka读取消息并显示source背压为100时,出现这种情况可能有多种原因。为了确定问题的根源,您需要结合多个方面的信息进行分析。

    首先,您可以使用Flink Web UI的反压监控面板来查看任务的反压状态。这个监控面板提供了SubTask级别的反压监控,可以通过周期性对Task线程的栈信息采样,判断线程是否被阻塞在请求Buffer中,从而判断节点是否处于反压状态。

    其次,您可以考虑以下几个方面来进行排查:

    1. 并行度设置:数据源端是Kafka,Source的并行度应设置为Kafka对应Topic的分区数。如果消费速度仍跟不上数据生产速度,可以考虑扩大Kafka的分区数,并调大并行度等于分区数。

    2. 算子链接优化:Flink会将算子的subtasks链接成tasks,每个task由一个线程执行。了解Flink操作链的优化点可以帮助您定位哪个算子处理能力跟不上。

    3. Kafka积压情况:当积压时,可以观察Kafka的积压情况,以及Flink ProcessFunction中的处理时间变化。

    4. 资源检查:检查集群本身的资源是否足够,包括CPU、内存和磁盘等。

    2023-12-14 21:35:16
    赞同 展开评论 打赏
  • 你这是连表join了好多表吧, 要知道flink的sql是sql语法,而不是真正的sql,所以大量的这种连表 分组 处理起来效率挺差的https://nightlies.apache.org/flink/flink-docs-release-1.18/docs/dev/table/sql/queries/joins/看看这些join 你用哪个合适 ,此回答整理自钉群“Flink CDC 社区”

    2023-12-14 07:44:30
    赞同 展开评论 打赏

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

相关产品

  • 实时计算 Flink版
  • 热门讨论

    热门文章

    相关电子书

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