Go Lambda 함수를 위한 계층 작업
Lambda 계층은 추가 코드 또는 데이터를 포함하는 .zip 파일 아카이브입니다. 계층에는 일반적으로 라이브러리 종속 항목, 사용자 지정 런타임 또는 구성 파일이 포함됩니다. 계층을 생성하려면 세 가지 일반적인 단계를 거칩니다.
-
계층 콘텐츠를 패키징합니다. 즉, 함수에 사용하려는 종속성이 포함된 .zip 파일 아카이브를 생성합니다.
-
Lambda에서 계층을 생성합니다.
-
계층을 함수에 추가합니다.
Go로 작성된 Lambda 함수의 종속성을 관리하는 데는 계층을 사용하지 않는 것이 좋습니다. 이는 Go의 Lambda 함수가 단일 실행 파일로 컴파일되어 함수를 배포할 때 Lambda에 제공하기 때문입니다. 이 실행 파일에는 컴파일된 함수 코드와 모든 종속성이 포함되어 있습니다. 계층을 사용하면 이 프로세스가 복잡해질 뿐만 아니라 함수가 초기화 단계에서 추가 어셈블리를 메모리에 수동으로 로드해야 하기 때문에 콜드 스타트 시간이 늘어납니다.
Go 핸들러와 함께 외부 종속성을 사용하려면 배포 패키지에 외부 종속성을 직접 포함하세요. 이렇게 하면 배포 프로세스를 간소화하고 내장된 Go 컴파일러 최적화를 활용할 수 있습니다. 함수에서 AWS SDK for Go와 같은 종속 항목을 가져와서 사용하는 방법에 대한 예제는 Go에서 Lambda 함수 핸들러 정의 섹션을 참조하세요.