

# Lambda 할당량
<a name="gettingstarted-limits"></a>

**중요**  
새 AWS 계정에서는 Lambda 함수와 Lambda MicroVM에 대한 동시성과 메모리 할당량이 감소했습니다. AWS는 사용량에 따라 이러한 할당량을 자동으로 늘립니다.

AWS Lambda는 수요에 맞춰 빠르게 규모를 조정할 수 있도록 설계되어 애플리케이션의 트래픽을 처리하기 위해 함수를 스케일 업할 수 있습니다. Lambda는 간접 호출 간에 상태를 유지하거나 이에 의존하지 않는 단기 컴퓨팅 작업을 위해 설계되었습니다. 코드는 단일 간접 호출에서 최대 15분 동안 실행될 수 있으며 단일 함수는 최대 10,240MB의 메모리를 사용할 수 있습니다.

계정과 다른 고객의 워크로드를 보호하도록 마련된 가드레일을 이해하는 것이 중요합니다. 서비스 할당량은 모든 AWS 서비스에 존재하며 변경할 수 없는 하드 한도와 증가를 요청할 수 있는 소프트 한도로 구성됩니다. 기본적으로 모든 새 계정에는 AWS 서비스를 탐색할 수 있는 할당량 프로파일이 할당됩니다.

계정에 적용되는 할당량을 보려면 [Service Quotas 대시보드](https://console.aws.amazon.com/servicequotas/home)로 이동합니다. 여기서 서비스 할당량을 확인하고, 할당량 증가를 요청하고, 현재 사용률을 확인할 수 있습니다. 여기에서 Lambda와 같은 특정 AWS 서비스로 드릴다운할 수 있습니다.

![현재 사용률이 있는 Lambda 할당량을 보여주는 Service Quotas 콘솔.](https://docs.aws.amazon.com/ko_kr/lambda/latest/dg/images/application-design-figure-1.png)


다음 섹션에서는 Lambda의 기본 할당량 및 한도를 범주별로 나열합니다.

**Topics**
+ [컴퓨팅 및 스토리지](#compute-and-storage)
+ [함수 구성, 배포 및 실행](#function-configuration-deployment-and-execution)
+ [Lambda API 요청](#api-requests)
+ [지속성 함수](#durable-functions-quotas)
+ [Lambda MicroVM](#microvms-quotas)
+ [기타 서비스](#quotas-other-services)

## 컴퓨팅 및 스토리지
<a name="compute-and-storage"></a>

Lambda는 함수를 실행하고 저장하는 데 사용할 수 있는 컴퓨팅 및 스토리지 리소스 양의 할당량을 설정합니다. 동시 실행 및 스토리지에 대한 할당량은 AWS 리전에 따라 적용됩니다. 탄력적 네트워크 인터페이스(ENI) 할당량은 지역에 관계없이 가상 프라이빗 클라우드(VPC)별로 적용됩니다. 다음 할당량은 기본값에서 늘릴 수 있습니다. 자세한 내용은 *Service Quotas 사용 설명서*의 [할당량 증가 요청](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html)을 참조하세요.


| 리소스 | 기본 할당량 | 최대 한도 증가 | 
| --- | --- | --- | 
| 동시 실행 | 1,000 | 수십만 | 
| Lambda 관리형 스토리지를 사용하는 업로드된 함수(.zip 파일 아카이브) 및 계층을 위한 스토리지. 각 함수 버전 및 계층 버전은 스토리지를 사용합니다.<br />스토리지 제한을 피하기 위해 [자체 관리형 S3 코드 스토리지](configuration-self-managed-storage.md)를 대신 사용하도록 함수와 계층을 구성할 수 있습니다.<br /> 코드 스토리지 관리 모범 사례는 Serverless Land의 [Monitoring Lambda code storage](https://serverlessland.com/content/service/lambda/guides/aws-lambda-operator-guide/code-storage)를 참조하세요. | 300GB(압축 해제됨) | 늘릴 수 없습니다. 이 한도를 초과하는 스토리지가 필요한 경우 [자체 관리형 S3 코드 스토리지](configuration-self-managed-storage.md)를 사용합니다. | 
| 컨테이너 이미지로 정의된 함수에 대한 스토리지. 이 이미지는 Amazon ECR에 저장됩니다. | [Amazon ECR 서비스 할당량](https://docs.aws.amazon.com/AmazonECR/latest/userguide/service-quotas.html)을 참조하세요. |   | 
| [가상 프라이빗 클라우드(VPC)별 탄력적 네트워크 인터페이스](configuration-vpc.md) 이 할당량은 Amazon Elastic File System(Amazon EFS)과 같은 다른 서비스와 공유됩니다. [Amazon VPC 할당량](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html)을 참조하세요.  | 500 | 수천 | 

Lambda가 트래픽에 대한 응답으로 함수 동시성을 확장하는 방법과 동시성에 대한 자세한 내용은 [Lambda 함수 규모 조정 이행](lambda-concurrency.md) 단원을 참조하세요.

## 함수 구성, 배포 및 실행
<a name="function-configuration-deployment-and-execution"></a>

함수 구성, 배포 및 실행에는 다음 할당량이 적용됩니다. 미리 설명된 경우를 제외하고는 변경할 수 없습니다.

**참고**  
Lambda 문서, 로그 메시지 및 콘솔은 약어 MB(MiB 대신)를 사용하여 1,024KB를 나타냅니다.


| 리소스 | 할당량 | 
| --- | --- | 
| 함수 [메모리 할당](configuration-memory.md) | 128MB\~10,240MB, 1MB 단위<br />**참고:** Lambda는 구성된 메모리 크기에 비례하여 CPU 용량을 할당합니다. **메모리(MB)** 설정을 사용하면 함수에 할당된 메모리 및 CPU 처리능력을 늘리거나 줄일 수 있습니다. 1,769MB에서, 함수는 하나의 vCPU와 동등한 값을 가집니다. | 
| 함수 제한 시간 | 900초(15분) | 
| 함수 [환경 변수](configuration-envvars.md) | 4KB, 함수와 관련된 모든 환경 변수에 대한 합계 | 
| 함수 [리소스 기반 정책](access-control-resource-based.md) | 20KB | 
| 함수 [계층](chapter-layers.md) | 5개 계층 | 
| 함수 [동시성 스케일링 제한](scaling-behavior.md) | 각 함수에 대해 10초 당 1,000개의 실행 환경 | 
| [간접 호출 페이로드](lambda-invocation.md)(요청 및 응답) | 요청 및 응답당 각각 6MB(동기식)<br />각 [스트리밍되는 응답](configuration-response-streaming.md)에 대해 200MB(동기식)<br />1MB(비동기식)<br />요청 라인과 헤더 값의 총 합산 크기 1MB | 
| [스트리밍되는 응답](configuration-response-streaming.md)의 대역폭 | 함수 응답의 처음 6MB에 대해 제한 없음<br />6MB보다 큰 응답의 경우 응답의 나머지 부분에 대해 2MBps | 
| 실행 환경당 네트워크 대역폭 | 625Mbps. VPC에 연결되지 않은 함수의 경우 [Service Quotas 콘솔](https://console.aws.amazon.com/servicequotas/home/services/lambda/quotas)을 통해 증가를 요청할 수 있습니다. 승인 후 네트워크 대역폭은 2,048MB 메모리에서 시작하여 10,240MB에서 최대 3,000Mbps에 도달하는 메모리까지 비례적으로 확장됩니다. | 
| [배포 패키지(.zip 파일 아카이브)](configuration-function-zip.md) 크기 | 50MB(Lambda API나 SDK를 통해 업로드하는 경우 압축됨) Amazon S3로 더 큰 파일을 업로드합니다.<br />50MB(Lambda 콘솔을 통해 업로드하는 경우)<br />250MB 계층 및 사용자 지정 런타임을 포함한 배포 패키지 콘텐츠의 최대 크기(압축 해제됨)<br /> | 
| 컨테이너 이미지 설정 크기 | 16KB | 
| [컨테이너 이미지](images-create.md) 코드 패키지 크기 | 10GB(모든 레이어를 포함한 최대 비압축 이미지 크기) | 
| 테스트 이벤트(콘솔 편집기) | 10 | 
| `/tmp` 디렉터리 스토리지 | 512MB에서 10,240MB 사이, 1MB 단위로 증가 | 
| 파일 설명자 | 1,024 Lambda 관리형 인스턴스에서는 더 높은 파일 서술자 한도(4,096)를 사용합니다. 자세한 내용은 [Lambda 관리형 인스턴스 실행 환경 이해](lambda-managed-instances-execution-environment.md) 섹션을 참조하세요.  | 
| 실행 프로세스/스레드 | 1,024 Lambda 관리형 인스턴스는 [Bottlerocket](https://aws.amazon.com/bottlerocket/)의 기본 프로세스 및 스레드 제한을 사용합니다. 자세한 내용은 [Lambda 관리형 인스턴스 실행 환경 이해](lambda-managed-instances-execution-environment.md) 섹션을 참조하세요.  | 

## Lambda API 요청
<a name="api-requests"></a>

다음 할당량은 Lambda API 요청과 연관되어 있습니다.


| 리소스 | 할당량 | 
| --- | --- | 
| 리전별 함수당 간접 호출 요청(동기) | 실행 환경의 각 인스턴스가 초당 최대 10개의 요청을 처리할 수 있습니다. 즉, 총 간접 호출 한도는 동시성 한도의 10배입니다. [Lambda 함수 규모 조정 이행](lambda-concurrency.md)을(를) 참조하세요. | 
| 리전별 함수당 간접 호출 요청(비동기) | 실행 환경의 각 인스턴스가 요청을 무제한으로 처리할 수 있습니다. 즉, 총 간접 호출 한도는 함수에서 사용할 수 있는 동시성만을 기준으로 합니다. [Lambda 함수 규모 조정 이행](lambda-concurrency.md)을(를) 참조하세요. | 
| 함수 버전 또는 별칭당 간접 호출 요청(초당 요청 수) | 10배 할당된 [프로비저닝된 동시성](configuration-concurrency.md) 이 할당량은 프로비저닝된 동시성을 사용하는 함수에만 적용됩니다.  | 
| [GetFunction](https://docs.aws.amazon.com/lambda/latest/api/API_GetFunction.html) API 요청 | 초당 요청 100개입니다. 늘릴 수 없습니다. | 
| [GetPolicy](https://docs.aws.amazon.com/lambda/latest/api/API_GetPolicy.html) API 요청 | 초당 요청 15개. 늘릴 수 없습니다. | 
| 나머지 컨트롤 플레인 API 요청(간접 호출, GetFunction 및 GetPolicy 요청 제외) | 모든 API에서 초당 요청 15개입니다(API별 초당 요청 15개 아님). 늘릴 수 없습니다. | 

## 지속성 함수
<a name="durable-functions-quotas"></a>

다음 할당량은 [지속성 함수](durable-functions.md)에 적용됩니다. 할당량은 AWS 리전별로 적용됩니다. 표에 기재된 대로, 미국 동부(버지니아 북부), 미국 서부(오리건) 및 유럽(아일랜드)에는 더 높은 기본값이 적용됩니다. 별도의 언급이 없는 한 이러한 한도는 늘릴 수 있습니다. 자세한 내용은 *Service Quotas 사용 설명서*의 [할당량 증가 요청](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html)을 참조하세요.


| 리소스 | 기본 할당량 | 
| --- | --- | 
| 실행 중인 최대 지속성 실행 수 | 리전당 5,000,000.<br />미국 동부(버지니아 북부), 미국 서부(오리건) 및 유럽(아일랜드)의 경우 10,000,000.<br />이것은 늘릴 수 있는 소프트 한도입니다. | 
| 지속성 실행당 최대 지속성 작업 수 | 3,000<br />늘릴 수 없습니다. 자세한 내용은 [사용 가능한 지속성 작업](durable-execution-sdk.md#durable-sdk-operations)을 참조하세요. | 
| 지속성 실행 스토리지(MB) | 100MB<br />늘릴 수 없습니다. 실행당 지속성 함수에 의해 지속되는 누적 페이로드 크기입니다. 자세한 내용은 [지속성 작업당 지속되는 데이터](durable-execution-sdk.md#durable-operations-checkpoint-consumption)를 참조하세요. | 
| 지속성 실행을 시작하는 데 드는 함수 간접 호출 속도 | 초당 요청 300개. | 
| [CheckpointDurableExecution](https://docs.aws.amazon.com/lambda/latest/api/API_CheckpointDurableExecution.html) API 요청 | 초당 요청 10,000개.<br />미국 동부(버지니아 북부), 미국 서부(오리건) 및 유럽(아일랜드)의 경우 초당 요청 20,000개. | 
| [GetDurableExecution](https://docs.aws.amazon.com/lambda/latest/api/API_GetDurableExecution.html) API 요청 | 초당 요청 30개. | 
| [GetDurableExecutionHistory](https://docs.aws.amazon.com/lambda/latest/api/API_GetDurableExecutionHistory.html) API 요청 | 초당 요청 15개. | 
| [GetDurableExecutionState](https://docs.aws.amazon.com/lambda/latest/api/API_GetDurableExecutionState.html) API 요청 | 초당 요청 10,000개.<br />미국 동부(버지니아 북부), 미국 서부(오리건) 및 유럽(아일랜드)의 경우 초당 요청 20,000개. | 
| [ListDurableExecutionsByFunction](https://docs.aws.amazon.com/lambda/latest/api/API_ListDurableExecutionsByFunction.html) API 요청 | 초당 요청 15개. | 
| [SendDurableExecutionCallbackFailure](https://docs.aws.amazon.com/lambda/latest/api/API_SendDurableExecutionCallbackFailure.html) API 요청 | 초당 요청 3,000개.<br />미국 동부(버지니아 북부), 미국 서부(오리건) 및 유럽(아일랜드)의 경우 초당 요청 6,000개. | 
| [SendDurableExecutionCallbackHeartbeat](https://docs.aws.amazon.com/lambda/latest/api/API_SendDurableExecutionCallbackHeartbeat.html) API 요청 | 초당 요청 3,000개.<br />미국 동부(버지니아 북부), 미국 서부(오리건) 및 유럽(아일랜드)의 경우 초당 요청 6,000개. | 
| [SendDurableExecutionCallbackSuccess](https://docs.aws.amazon.com/lambda/latest/api/API_SendDurableExecutionCallbackSuccess.html) API 요청 | 초당 요청 3,000개.<br />미국 동부(버지니아 북부), 미국 서부(오리건) 및 유럽(아일랜드)의 경우 초당 요청 6,000개. | 
| [StopDurableExecution](https://docs.aws.amazon.com/lambda/latest/api/API_StopDurableExecution.html) API 요청 | 초당 요청 300개.<br />미국 동부(버지니아 북부), 미국 서부(오리건) 및 유럽(아일랜드)의 경우 초당 요청 600개. | 

## Lambda MicroVM
<a name="microvms-quotas"></a>

Lambda MicroVM은 컴퓨팅, 스토리지 및 API 요청에 대한 할당량을 설정합니다. 조정 가능으로 표시된 할당량은 Service Quotas 콘솔을 통해 늘릴 수 있습니다.

**참고**  
Lambda MicroVM은 ARM64(AWS Graviton) 아키텍처를 지원합니다.

### 컴퓨팅 및 스토리지
<a name="microvms-quotas-compute"></a>


| 리소스 | 기본 할당량 | 조정 가능 | 
| --- | --- | --- | 
| 모든 MicroVM에 할당된 메모리(계정별, 리전별) | 400GB(각각 2GB의 메모리가 구성된 MicroVM 200개 또는 각각 1GB의 메모리가 구성된 MicroVM 400개).<br />미국 동부(버지니아 북부), 미국 서부(오리건), 미국 동부(오하이오) 및 아시아 태평양(도쿄) 1,024GB(각각 2GB의 메모리가 구성된 MicroVM 512개 또는 각각 1GB의 메모리가 구성된 MicroVM 1,024개).<br />이 할당량의 최대 4배까지 버스트 가능 | 예 | 
| MicroVM당 최대 실행 지속 시간 | 8시간(28,800초) | 아니요 | 

### 이미지 및 버전
<a name="microvms-quotas-images"></a>


| 리소스 | 기본 할당량 | 조정 가능 | 
| --- | --- | --- | 
| 리전별 계정당 MicroVM 이미지 수 | 100 | 예 | 
| MicroVM 이미지당 버전 수 | 50 | 예 | 
| 동시 이미지 빌드 수(계정별, 리전별) | 5<br />미국 동부(버지니아 북부), 미국 서부(오리건), 미국 동부(오하이오), 아시아 태평양(도쿄)에서 10 | 예 | 

### MicroVM별 처리량
<a name="microvms-quotas-throughput"></a>


| 리소스 | 한도 | 조정 가능 | 
| --- | --- | --- | 
| MicroVM당 동시 연결 | 8(1 vCPU), 16(2 vCPU), 32(4 vCPU), 64(8 vCPU), 128(16 vCPU) | 아니요 | 
| MicroVM당 초당 요청 수 | 40(4 vCPU/8GB), 160(16 vCPU/32GB) | 아니요 | 

### API 속도 제한
<a name="microvms-quotas-api"></a>


| API 작업 | 속도(TPS) | 버스트 | 조정 가능 | 
| --- | --- | --- | --- | 
| RunMicrovm | 5 | 5 | 예 | 
| ResumeMicrovm | 5 | 5 | 예 | 
| SuspendMicrovm | 2 | 2 | 예 | 
| TerminateMicrovm | 10 | 10 | 예 | 
| GetMicrovm | 100 | 100 | 예 | 
| CreateMicrovmAuthToken | 50 | 50 | 예 | 
| CreateMicrovmShellAuthToken | 5 | 5 | 예 | 

**참고**  
TPS = 초당 트랜잭션 수. 이러한 속도 제한은 계정별, 리전별로 적용됩니다. 지터가 적용된 지수 백오프를 사용하여 스로틀링된 요청을 재시도하세요.

## 기타 서비스
<a name="quotas-other-services"></a>

AWS Identity and Access Management(IAM), Amazon CloudFront(Lambda@Edge), Amazon Virtual Private Cloud(Amazon VPC) 등의 다른 서비스에 대한 할당량이 Lambda 함수에 영향을 줄 수 있습니다. 자세한 내용은 [AWS 서비스 할당량](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)을 *Amazon Web Services 일반 참조*에서, 그리고 [다른 AWS 서비스의 이벤트로 Lambda 간접 호출](lambda-services.md)를 참조하세요.

Lambda를 포함하는 많은 애플리케이션은 여러 AWS 서비스를 사용합니다. 서비스마다 다양한 기능에 대한 할당량이 다르기 때문에 전체 애플리케이션에서 이러한 할당량을 관리하는 것이 어려울 수 있습니다. 예를 들어 API Gateway의 기본 스로틀 한도는 초당 요청 10,000개이지만 Lambda의 기본 동시성 한도는 1,000입니다. 이러한 불일치로 인해 Lambda가 처리할 수 있는 API Gateway의 수신 요청이 더 많아질 수 있습니다. 예상되는 트래픽 수준에 맞게 Lambda 동시성 한도 증가를 요청하여 이 문제를 해결할 수 있습니다.

애플리케이션 부하 테스트를 수행하면 프로덕션에 배포하기 전에 애플리케이션의 성능에 대한 엔드 투 엔드 모니터링을 수행할 수 있습니다. 로드 테스트 중에 예상되는 트래픽 수준에 대한 제한 요인으로 작용할 수 있는 할당량을 식별하고 적절히 작업을 수행할 수 있습니다.