AWS Lambda – Lambda 함수 구성
이전 장에서는 AWS 콘솔에서 AWS Lambda 함수를 생성하는 방법을 배웠습니다. 그러나 Lambda 함수를 생성하기위한 다른 파라미터가 있습니다. 여기에는 메모리 할당, 시간 초과 등이 포함됩니다.
이 장에서는 AWS Lambda의 다음 구성 속성에 대해 자세히 이해하겠습니다.
메모리 할당
AWS 콘솔에 로그인하고 기존 lambda 함수를 생성하거나 선택합니다. 클릭Configuration할당 된 메모리의 세부 정보를 보려면 탭을 클릭하십시오. 아래에 표시된 스크린 샷을보십시오-
기본적으로 할당 된 메모리는 128MB. 메모리를 늘리려면 슬라이더를 클릭 할 수 있습니다.
메모리는 다음과 같이 증가합니다. 64MB슬라이더를 움직일 때. 사용 가능한 최대 메모리가3008MB. 아래에 표시된 스크린 샷을보십시오-
당신은 또한 사용할 수 있습니다 aws cli명령 프롬프트에서 메모리 제한을 늘리십시오. 64MB 단위로 메모리를 제공해야합니다.
이제 name을 사용하여 AWS Lambda의 메모리 제한을 늘립니다.myfirstlambdafunction.
함수의 메모리 세부 정보는 아래 스크린 샷에 나와 있습니다.
다음을 사용하여 메모리를 변경하는 데 사용되는 명령 aws cli 다음과 같습니다-
aws lambda update-function-configuration --function-name your function name --
region region where your function resides --memory-size memory amount --
profile admin user
AWS Lambda 함수의 해당 출력 myfirstlambdafunctionAWS 콘솔에서 여기에 표시됩니다. 메모리가 128MB에서 256MB로 변경되었는지 확인합니다.
최대 실행 시간
시간 초과는 시간 초과가 발생하는 경우 종료하기 위해 AWS Lambda 함수에 할당 된 시간입니다. AWS Lambda 함수는 할당 된 시간 내에 실행되거나 지정된 제한 시간을 초과하면 종료됩니다. 함수를 실행하는 데 필요한 시간을 평가하고 그에 따라 시간을 선택해야합니다.Configuration 아래와 같이 AWS 콘솔의 탭-
IAM 역할
AWS Lambda 함수를 생성 할 때 역할 또는 권한을 할당해야합니다. S3 또는 dynamoDB 용 AWS Lambda가 필요한 경우 lambda 서비스와 관련된 권한을 할당해야합니다. 할당 된 역할에 따라 AWS Lambda는 취해야 할 단계를 결정합니다. 예를 들어 dynamodb에 대한 전체 액세스 권한을 부여하면 dynamodb 테이블에서 행을 추가, 업데이트 및 삭제할 수 있습니다.
핸들러 이름
이것은 AWS Lambda 함수의 실행 시작입니다. 핸들러 함수에는 트리거 된 이벤트, 컨텍스트 객체 및 콜백에 대한 세부 정보가 있습니다.success 또는 error AWS Lambda의.
nodejs의 핸들러 함수 형식은 다음과 같습니다.
exports.handler = (event, context, callback) => {
callback(null, "hello from lambda");
};
환경 변수를 사용하는 Lambda 함수
이 섹션에서는 구성 섹션에 추가 된 환경 변수를 사용하여 간단한 Lambda 함수를 생성합니다. 이를 위해 아래 단계를 따르고 각 스크린 샷을 참조하십시오.
1 단계
AWS 콘솔로 이동하여 그림과 같이 Lambda에서 함수를 생성합니다.
2 단계
이제 다음과 같이 환경 변수를 추가하십시오.
3 단계
이제 다음과 같이 Lambda 코드에서 동일하게 가져 오겠습니다.
exports.handler = (event, context, callback) => {
var hostName = process.env.host;
var userName = process.env.username;
callback(null, "Environment Variables =>"+hostName+" and "+userName);
};
4 단계
환경 변수에서 세부 정보를 얻으려면 process.env보여진 바와 같이. 이 구문은NodeJS 실행 시간.
var hostName = process.env.host;
var userName = process.env.username;
5 단계
실행시 Lambda 함수의 출력은 다음과 같습니다.