.zip 파일 아카이브를 사용하여 C# Lambda 함수를 빌드 및 배포 - AWS Lambda

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

.zip 파일 아카이브를 사용하여 C# Lambda 함수를 빌드 및 배포

.NET 배포 패키지(.zip 파일 아카이브)에는 함수의 컴파일된 어셈블리와 해당 어셈블리의 모든 종속 항목이 함께 포함되어 있습니다. 패키지는 proj.deps.json 파일도 포함합니다. 이 패키지는 함수의 모든 종속성과 proj.runtimeconfig.json 파일을 .NET 런타임으로 전송하며, 해당 파일은 런타임을 구성하는 데 사용됩니다.

개별 Lambda 함수를 배포하려면.Amazon.Lambda.Tools NET Lambda 글로벌 CLI를 사용하면 됩니다. dotnet lambda deploy-function 명령을 사용하면.zip 배포 패키지가 자동으로 생성되어 Lambda에 배포됩니다. 하지만 AWS Serverless Application Model(AWS SAM) 또는 AWS Cloud Development Kit (AWS CDK)와(과) 같은 프레임워크를 사용하여 .NET 애플리케이션을 AWS에 배포하는 것이 좋습니다.

서버리스 애플리케이션은 일반적으로 특정 비즈니스 작업을 수행하기 위해 함께 작동하는 Lambda 함수와 기타 관리형 AWS 서비스의 조합으로 구성됩니다. AWS SAM과 AWS CDK는 규모에 따라 다른 AWS 서비스와 함께 Lambda 함수를 빌드하고 배포하는 것을 단순화합니다. AWS SAM 템플릿 사양에서는 서버리스 애플리케이션을 구성하는 Lambda 함수, API, 권한, 구성 및 기타 AWS 리소스를 설명하는 간단하고 깔끔한 구문을 제공합니다. AWS CDK을(를) 사용하여 클라우드 인프라를 코드로 정의하면 .NET과 같은 최신 프로그래밍 언어와 프레임워크를 활용하여 클라우드에서 신뢰할 수 있고, 확장 가능하며, 비용 대비 효율적인 애플리케이션을 빌드하는 데 도움이 됩니다. AWS CDK 및 AWS SAM은(는) 모두 .NET Lambda 글로벌 CLI를 사용하여 함수를 패키징합니다.

.NET Core CLI를 사용하면 C#의 함수와 함께 Lambda 계층을 사용할 수 있지만 이는 권장되지 않습니다. 계층을 사용하는 C#의 함수는 초기화 단계 중 공유 어셈블리를 메모리에 수동으로 로드하므로 콜드 시작 시간을 늘릴 수 있습니다. 대신 컴파일 시간에 모든 공유 코드를 포함하여 .NET 컴파일러의 기본 제공 최적화를 활용하세요.

AWS SAM, AWS CDK 및 .NET Lambda 글로벌 CLI를 사용하여.NET Lambda 함수를 빌드하고 배포하는 지침은 다음 섹션에서 확인할 수 있습니다.