Lambda 함수 제한 시간 구성 - AWS Lambda

Lambda 함수 제한 시간 구성

Lambda는 제한 시간 이전에 설정된 시간 동안 코드를 실행합니다. 제한 시간은 Lambda 함수를 실행할 수 있는 최대 시간(초)입니다. 이 설정의 기본값은 3초이지만 1초 단위로 최대 900초(15분)까지 값을 조정할 수 있습니다.

이 페이지에서는 Lambda 함수의 제한 시간 설정을 업데이트하는 경우와 방법을 설명합니다.

Lambda 함수에 대한 적절한 제한 시간 값을 결정합니다.

제한 시간 값이 함수의 평균 지속 시간에 가까울수록 함수가 예기치 않게 시간 초과될 위험이 커집니다. 함수의 지속 시간은 데이터 전송량 및 처리량과 함수가 상호 작용하는 서비스의 지연 시간에 따라 달라질 수 있습니다. 시간 초과의 몇 가지 일반적인 원인은 다음과 같습니다.

  • Amazon Simple Storage Service(Amazon S3)의 다운로드가 평균보다 크거나 시간이 더 걸립니다.

  • 함수가 다른 서비스에 요청을 보내면 응답하는 데 시간이 더 오래 걸립니다.

  • 함수에 제공되는 파라미터가 있으면 함수의 계산 복잡성이 커지므로 호출 시간이 더 오래 걸립니다.

애플리케이션을 테스트할 때 테스트에 데이터의 크기 및 양과 실제 파라미터 값이 정확하게 반영되는지 확인하십시오. 테스트에서는 편의상 작은 샘플을 사용하는 경우가 많지만 워크로드에 대해 합리적으로 예상되는 상한에 존재하는 데이터세트를 사용해야 합니다.

제한 시간 구성(콘솔)

Lambda 콘솔에서 함수 제한 시간을 구성할 수 있습니다.

함수에 대한 제한 시간을 수정하려면 다음을 수행합니다.
  1. Lambda 콘솔의 함수 페이지를 엽니다.

  2. 함수를 선택합니다.

  3. 구성 탭을 선택한 다음 일반 구성을 선택합니다.

    Lambda 콘솔의 구성 탭입니다.
  4. 일반 구성에서 편집을 선택합니다.

  5. 제한 시간에 1초부터 900초(15분) 사이의 값을 설정합니다.

  6. Save(저장)를 선택합니다.

제한 시간 구성(AWS CLI)

update-function-configuration 명령을 사용하여 제한 시간 값을 초 단위로 구성할 수 있습니다. 다음 예제 명령에서는 함수 제한 시간을 120초(2분)로 늘립니다.

aws lambda update-function-configuration \ --function-name my-function \ --timeout 120

제한 시간 구성(AWS SAM)

AWS Serverless Application Model을 사용하여 함수의 제한 시간 값을 구성할 수 있습니다. template.yaml 파일의 Timeout 속성을 업데이트한 다음 sam deploy를 실행합니다.

예 template.yaml
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: An AWS Serverless Application Model template describing your function. Resources: my-function: Type: AWS::Serverless::Function Properties: CodeUri: . Description: '' MemorySize: 128 Timeout: 120 # Other function properties...