【发布时间】:2019-01-09 11:33:46
【问题描述】:
通过尝试大量示例,我对气流的编程功能非常熟悉。阻止我进一步挖掘的是它如何在不使 CPU 或 RAM 过载的情况下执行其工作,有没有办法控制负载以便它不会耗尽资源
我知道当调度程序通过将以下字段 min_file_process_interval 和 scheduler_heartbeat_sec 的值更改为一分钟左右来完成其“更频繁地调度和挑选文件”的工作时减少负载的一种方法。虽然它减少了持续的 CPU 加息,但是当间隔过去时(即一分钟后),它突然回到启动期间吸收约 95% 的 CPU。你如何减少它呢?至少不会消耗超过 70% 的 CPU?
已编辑:
另外,当 scheduler_heartbeat 间隔过去时,我看到我的所有 python 脚本再次执行。这是它的工作方式吗?我认为它会在间隔之后拾取新的 DAG,否则不会做任何事情。
【问题讨论】:
-
您也必须重置 dag 开始日期。基于开始日期和调度间隔的气流调度任务。这可能是突然偷看 CPU 的原因之一。
-
重置是什么意思? Airflow 不应该根据开始日期和计划间隔来安排任务吗?另外,我只打开了一个 DAG(设置为“@once”)进行调度,仍然需要大量的 CPU @MJK