AWS SWF автоматически отменяет дочерние рабочие процессы

У меня есть рабочий процесс AWS SWF, который создает много дочерних рабочих процессов во время выполнения в зависимости от количества входных файлов. Для x количества входных файлов будет создано x количество дочерних рабочих процессов. Он отлично работает, когда число входных файлов составляет около 400, и успешно создает и выполняет 400 дочерних рабочих процессов.

Проблема заключается в том, что когда мои входные данные содержат около 500 или более файлов, многие дочерние рабочие процессы запускаются успешно, но некоторые из них автоматически отменяются. Я пробовал разные конфигурации, но ничего не получалось.

Я думаю, что предел AWS для числа дочерних рабочих процессов составляет 1000, так что это не должно быть проблемой.

Текущая конфигурация дочернего рабочего процесса: Время ожидания запуска до закрытия: 2 часа 1 минута Задание до закрытия: 1 минута 30 секунд

Конфигурация основного рабочего процесса: Время ожидания запуска до закрытия: 9 часов Задание до закрытия: 1 минута 30 секунд

1 ответ

Я предполагаю, что в коде рабочего процесса выдается какое-то исключение, которое по умолчанию отменяет рабочие процессы в той же области отмены. Прочитайте документацию TryCatchFinally для получения дополнительной информации о семантике отмены.

В общем, я бы не рекомендовал так много дочерних рабочих процессов в SWF, вы всегда можете сделать это иерархически. Как 30 детей, каждый из них 30 детей дают 900 рабочих процессов.

Другие вопросы по тегам