Рубрики
Без рубрики

Как я узнал, что лямбда не может быть остановлена

Советы и рекомендации AWS!

Автор оригинала: Nada Jankovic.

Я должен начать этот пост с того, что скажу, что люблю AWS lambda. Это облегчает мою жизнь как разработчика, когда дело доходит до создания приложений.

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

Дросселирование означало, что в этот момент ни одна функция не может быть запущена, потому что число выполняемых процессов одновременно было установлено равным 0. После сброса его на 1 эта лямбда продолжила свое выполнение там, где остановилась. Единственный способ остановить его-это повторно развернуть мой код с помощью sys.exit(0) , что привело к успешному завершению лямбды (с 3 повторными попытками, но это сработало!).

Это небольшая уловка, но тем не менее открывающая мне разум в тот день.