Как ограничить параллелизм шага в пошаговых функциях - PullRequest
2 голосов
/ 11 марта 2020

У меня есть конечный автомат в AWS. Я хочу ограничить параллелизм задачи (созданной с помощью лямбды), чтобы уменьшить трафик c для одного из моих последующих API.

Я могу ограничить лямбда-параллелизм, но задача завершается с ошибкой «Lambda.TooManyExecutions». Может кто-нибудь поделиться простым подходом к ограничению параллелизма лямбда-задачи?

Спасибо, Винод.

1 Ответ

0 голосов
/ 11 марта 2020

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

https://docs.aws.amazon.com/step-functions/latest/dg/concepts-error-handling.html#error -handling-examples

Количество попыток ограничено, но вы можете его определить.

В качестве альтернативы, если вы хотите повторить попытку без ограничений, вы можете использовать catch для перехода в состояние ожидания, когда выбрасывается этот параллелизм. Вы можете прочитать о catch в ссылке выше. Вот состояние ожидания сделать c.

https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-wait-state.html

У вас просто есть переход состояния ожидания обратно в состояние задачи после завершения ожидания.

...