首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >反向压力指示.如何找出其根源

反向压力指示.如何找出其根源
EN

Stack Overflow用户
提问于 2018-02-19 11:56:59
回答 1查看 1.1K关注 0票数 2

如何识别任务中产生背压的根本原因?(即多个操作符的哪个操作符会导致背压)

  • 有相关的日志吗?(失败的跟踪StackTraceSampleCoordinator -“接收到的后期堆栈跟踪示例”没有出现在任何日志中)
  • 还有其他我能用的工具吗?

=====================================

下面是我所封装的内容:在Flink作业执行过程中,会显示一个背压指示。据我所知,引起的任务是接续具有BP指示的“最新”任务的任务。此任务正在运行多个操作符的流:还原、映射和接收器。分析作业度量没有帮助--从前面的操作符中得到的是在这个操作符中得到了什么。下列工作计划的第1和第2项任务出现背压指示:

[Source: Custom Source -> Filter -> (Flat Map -> Timestamps/Watermarks)] -> [Timestamps/Watermarks] -> [TriggerWindow(TumblingEventTimeWindows(300000), ReducingStateDescriptor{serializer=org.apache.flink.api.java.typeutils.runtime.TupleSerializer@f812e02f, reduceFunction=EntityReducer@2d19244c}, EventTimeTrigger(), WindowedStream.reduce(WindowedStream.java:300)) -> Map -> Sink: Unnamed]

  • 代表一项任务的。
EN

回答 1

Stack Overflow用户

发布于 2018-02-20 17:39:12

在Flink UI中,任务的背压表示任务对collect()的调用是阻塞的。因此,如果您的示例中的任务1和2有背压,那么任务3中可能会有与源不一致的东西。

请注意,如果您的源正在毫不延迟地合成事件,但是您有一个真正的接收器,那么当接收器成为瓶颈时,您将始终看到背压。有关您的实际源和接收器的详细信息在这里将是有用的。

为了更深入地了解任务3中正在发生的事情,可以将类似于YourKit的东西连接起来,以监视该任务中各种(流水线)操作的实际CPU使用情况。或者只需kill -QUIT <taskmanager pid>几次,查看哪些线程被阻塞/正在执行真正的工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48865701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档