Я недавно обновился с v1.7.1.2 до v1.9.0 и после обновления заметил, что загрузка ЦП значительно возросла. После некоторых копаний я отследил их до следующих двух параметров конфигурации планировщика: min_file_process_interval (по умолчанию 0) и max_threads (по умолчанию 2).
Как и ожидалось, увеличение min_file_process_interval позволяет избежать замкнутого цикла и прекращает использование процессора, когда он простаивает. Но я не понимаю, почему min_file_process_interval влияет на выполнение задач?
Если я установил min_file_process_interval равным 60 с, он теперь будет ждать не менее 60 с между выполнением каждой задачи в моей группе обеспечения доступности баз данных, поэтому, если у меня есть 4 последовательных задачи, это теперь добавило 4 минуты ко времени выполнения. Например:
start -> [task1] -> [task2] -> [task3] -> [task4]
^ ^ ^ ^
60s 60s 60s 60s
У меня есть настройка воздушного потока в моей тестовой среде и в рабочей среде. Это меньше проблема в моей рабочей среде (но все же касается), но большая проблема для моей тестовой среды. После обновления загрузка ЦП значительно выше, поэтому либо я принимаю более высокую загрузку ЦП, либо пытаюсь уменьшить его с более высоким значением конфигурации. Однако это значительно увеличивает время выполнения моих тестовых пакетов.
Почему min_file_process_interval влияет на время между задачами после планирования DAG? Существуют ли другие параметры конфигурации, которые могут решить мою проблему?