AWS Повторное использование контейнера и синхронизация для ресурса вне функции обработчика - PullRequest
1 голос
/ 13 января 2020

С AWS контейнером повторным использованием , я хочу понять, происходит ли повторное использование, когда какой-либо вызов находится в ожидании в этом контейнере или после завершения вызова. Мне нужно объявить некоторые ресурсы вне функции-обработчика , и я использую синхронизацию и do c, но прежде чем я это сделаю, я хочу понять, что AWS обещание / контракт.

1 Ответ

2 голосов
/ 13 января 2020

Лямбда не нуждается в синхронизации, все, что вы объявляете вне обработчика, будет повторно использовано для следующего вызова, который попадет в ту же среду выполнения. Но не будет двух вызовов в одном контейнере одновременно. Только после завершения первого вызова может попасть в ту же среду выполнения.

Ключевым термином, который нужно искать, является уже упоминавшаяся "среда выполнения" / "контекст выполнения". https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html и https://docs.aws.amazon.com/lambda/latest/dg/running-lambda-code.html могут оказаться полезными.

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

«После» не делает его на 100% абсолютным, но достаточно ясным, и я могу подтвердить, что это так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...