Lambda 지속성 함수 구성
내구성 실행 설정은 AWS Lambda 함수가 실행되는 기간, 서비스에서 실행 기록을 유지하는 기간, 실행 데이터를 암호화하는 AWS KMS KMS 키를 제어합니다. 함수의 지속성 실행을 활성화하도록 이러한 설정을 구성합니다.
지속성 실행 활성화
실행 제한 시간 및 기록 보존을 설정하도록 함수를 생성할 때 DurableConfig 객체를 구성합니다. 함수를 생성할 때만 지속성 실행을 활성화할 수 있습니다. 기존 함수에서는 활성화할 수 없습니다.
구성 파라미터:
ExecutionTimeout- Lambda가 실행을 중지하기 전에 지속성 실행이 실행될 수 있는 최대 시간(초)입니다. 이 제한 시간은 개별 함수 간접 호출이 아니라 전체 지속성 실행에 적용됩니다. 유효 범위: 1~31,622,400.RetentionPeriodInDays- 지속성 실행이 완료된 후 실행 기록을 유지하는 기간(일)입니다. 이 기간이 지나면GetDurableExecutionHistoryAPI를 통해 실행 기록을 더 이상 사용할 수 없습니다. 유효 범위: 1~90.KMSKeyArn– 선택 사항입니다. 지속적인 실행 데이터를 암호화하기 위한 고객 관리형 키의 ARN입니다. 자세한 내용은 Lambda 지속적인 실행 데이터 암호화를 참조하세요.
전체 API 참조는 Lambda API 참조의 DurableConfig를 참조하세요.
구성 모범 사례
프로덕션용으로 지속성 함수 구성 시 다음 모범 사례를 따릅니다.
-
적절한 실행 제한 시간 설정 - 워크플로의 최대 예상 기간에 따라
ExecutionTimeout을 구성합니다. 제한 시간이 불필요하게 길면 비용 및 리소스 할당에 영향을 미치므로 너무 길게 설정하지 마세요. -
보존과 스토리지 비용의 균형 유지 - 디버깅 및 감사 요구 사항에 따라
RetentionPeriodInDays를 설정합니다. 보존 기간이 길수록 스토리지 비용이 증가합니다. -
상태 크기 모니터링 - 상태 객체가 크면 스토리지 비용이 증가하고 성능에 영향을 미칠 수 있습니다. 상태 크기를 최소화하고 대용량 데이터에는 외부 스토리지를 사용하세요.
-
적절한 로깅 구성 - 장기 실행 워크플로 문제를 해결하기 위해 세부 로깅을 활성화하되, 로그 볼륨과 비용에 대한 영향을 고려합니다.
-
자체 AWS KMS 키로 암호화 -
KMSKeyArn을 고객 관리형 키로 설정하여 키 교체를 제어하고, 액세스를 감사하고, 규정 준수 요구 사항을 충족합니다. AWS Lambda 지속적인 실행 데이터 암호화을(를) 참조하세요.
프로덕션 구성 예제:
{ "ExecutionTimeout": 86400, "RetentionPeriodInDays": 7, "KMSKeyArn": "arn:aws:kms:us-east-1:111122223333:key/key-id" }
이 예제에서는 24시간(86,400초) 실행 제한 시간, 7일 보존 기간 및 암호화를 위한 고객 관리형 키를 설정합니다.