ограничение неограниченного параллелизма лямбда-функции

#amazon-web-services #aws-lambda #terraform

#amazon-web-services #aws-lambda #terraform

Вопрос:

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

Это правильно?

И даже когда я пытаюсь добавить конфигурацию параллелизма, она не может применить ее к версии «$ LATEST». Почему это так?

 resource "aws_lambda_provisioned_concurrency_config" "deliver" {
  function_name                     = aws_lambda_function.deliver.function_name
  qualifier                         = aws_lambda_function.deliver.version
  provisioned_concurrent_executions = 1
}
  

Ответ №1:

Зарезервированный параллелизм не обязательно предоставлять. Если вы устанавливаете только reserved_concurrent_executions для lambda_function ресурса, а не создаете aws_lambda_provisioned_concurrency_config ресурс, это просто ограничит объем параллелизма для функции. Это также гарантирует, что другие функции в вашей учетной записи не будут использовать ограничения вашей учетной записи с лямбда-параллелизмом таким образом, чтобы помешать выполнению этой функции.

reserved_concurrent_executions Свойство управляет функцией ограничения параллелизма.

aws_lambda_provisioned_concurrency_config Ресурс управляет предоставленной функцией параллелизма.

Комментарии:

1. Отлично! Спасибо! Я знал, что мне, должно быть, не хватает чего-то простого.

Ответ №2:

Я считаю, что зарезервированный параллелизм будет делать то, что вы ищете. Вы также можете использовать автоматическое масштабирование для управления уровнем предоставленного параллелизма (и, возможно, даже зарезервированного параллелизма?) На основе использования.

Но вы не можете выделить выделенный параллелизм для псевдонима, который указывает на неопубликованную версию ($LATEST).