AWS Lambda は需要に合わせて迅速にスケールするように設計されているため、関数をスケールアップしてアプリケーションのトラフィックを処理できます。Lambda は、呼び出し間の状態を保持または依存しない、存続期間の短い計算タスク向けに設計されています。コードは 1 回の呼び出しで最大 15 分間実行でき、1 つの関数は最大で 10,240 MB のメモリを使用できます。
お使いのアカウントと他のお客様のワークロードを保護するために導入されているガードレールについて理解することが重要です。Service Quotas はすべての AWS サービスに存在し、変更できないハード制限、ならびに引き上げをリクエストできるソフト制限で構成されています。デフォルトでは、すべての新規アカウントには AWS サービスの探索を許可するクォータプロファイルが割り当てられます。
アカウントに適用されるクォータを確認するには、Service Quotas ダッシュボード

重要
新規の AWS アカウント では、同時実行性とメモリクォータが低くなっています。これらのクォータは、使用状況に応じて AWS が自動的に引き上げます。
次のセクションでは、Lambda のデフォルトクォータおよび制限をカテゴリ別に一覧表示します。
コンピューティングとストレージ
Lambda では、関数の実行と保存に使用できるコンピューティングおよびストレージリソースの量に対してクォータを設定します。同時実行とストレージのクォータは、AWS リージョン ごとに適用されます。Elastic Network Interface (ENI) クォータは、リージョンにかかわらず、仮想プライベートクラウド (VPC) ごとに適用されます。次のクォータは、デフォルト値から引き上げることができます。詳細については、「Service Quotas ユーザーガイド」の「クォータの引き上げのリクエスト」を参照してください。
リソース | デフォルトのクォータ | 引き上げることができる最大 |
---|---|---|
同時実行数 |
1,000 |
数万 |
アップロードされた関数 (.zip ファイルアーカイブ) とレイヤーのストレージ。各関数バージョンとレイヤーバージョンは、ストレージを消費します。 コードストレージ管理のベストプラクティスについては、Serverless Land の「Lambda コードストレージのモニタリング |
75 GB |
Terabytes |
コンテナイメージとして定義された関数のストレージ。これらのイメージは Amazon ECR に保存されます。 |
「Amazon ECR サービスクォータ」を参照してください。 |
|
仮想プライベートクラウド (VPC) ごとの Elastic Network Interfaces 注記このクォータは、Amazon Elastic File System (Amazon EFS) などの他のサービスと共有されます。「Amazon VPC クォータ」を参照してください。 |
500 |
数千 |
同時実行および Lambda がトラフィックに応じて関数の同時実行数をスケーリングする方法の詳細については、「Lambda 関数のスケーリングについて」を参照してください。
関数の設定、デプロイ、実行
関数の設定、デプロイ、実行には、次のクォータが適用されます。特に明記されていない限り、変更できません。
注記
Lambda のドキュメント、ログメッセージ、およびコンソールでは、1024 KB を示すのに (MiB ではなく) MB を使用します。
リソース | クォータ |
---|---|
関数のメモリ割り当て |
128 MB から 10,240 MB まで、1 MB 単位で増加できます。 注意: Lambda は、設定されたメモリの量に比例して CPU パワーを割り当てます。[メモリ (MB)] 設定を使用して、関数に割り当てられたメモリと CPU パワーを増減できます。1,769 MB の場合、1 つの vCPU に相当します。 |
関数タイムアウト |
900 秒 (15 分) |
関数の環境変数 |
4 KB (関数に関連付けられたすべての環境変数) |
20 KB |
|
関数レイヤー |
5 つのレイヤー |
関数の同時実行スケーリング制限 |
各関数について、10 秒ごとに 1,000 の実行環境が必要です。 |
呼び出しペイロード (リクエストとレスポンス) |
リクエストとレスポンスにそれぞれ 6 MB (同期) ストリーミング応答ごとに 20 MB (同期。ストリーミング応答のペイロードサイズは、デフォルト値から増やすことができます。詳しくは サポート にお問い合わせください。) 256 KB (非同期) リクエスト行とヘッダー値の合計サイズは 1 MB |
ストリーミングレスポンスの帯域幅 |
関数のレスポンスでは、最初の 6 MB には上限がありません 6 MB を超えるレスポンスの場合、残りのレスポンスは 2 Mbps です |
50 MB (zip 圧縮済み、Lambda API SDK を介してアップロードした場合)。サイズの大きいファイルは Amazon S3 でアップロードしてください。 50 MB (Lambda コンソール経由でアップロードした場合) 250 MB レイヤーやカスタムランタイムなど、デプロイパッケージの内容の最大サイズ。(解凍済み) |
|
コンテナイメージの設定サイズ |
16 KB |
コンテナイメージのコードパッケージサイズ |
10 GB (非圧縮のイメージの最大サイズ、すべてのレイヤーを含む) |
テストイベント (コンソールエディタ) |
10 |
|
512 MB〜10,240 MB、1 MB 刻み |
ファイルディスクリプタ |
1,024 |
実行プロセス/スレッド |
1,024 |
Lambda API リクエスト
次のクォータは Lambda API リクエストに関連付けられています。
リソース | クォータ |
---|---|
リージョンごとの関数あたりの呼び出しリクエスト (同期) |
実行環境の各インスタンスは、1 秒あたり最大 10 件のリクエストを処理できます。つまり、呼び出しの合計上限数は、同時実行数上限の 10 倍になります。「Lambda 関数のスケーリングについて」を参照してください。 |
リージョンごとの関数あたりの呼び出しリクエスト (非同期) |
実行環境の各インスタンスは、無制限の数のリクエストを処理できます。つまり、呼び出しの合計上限数は、関数に利用できる同時実行数のみに基づく数になります。「Lambda 関数のスケーリングについて」を参照してください。 |
関数のバージョンまたはエイリアスあたりの呼び出しリクエスト頻度 (リクエスト数/秒) |
10 x 割り当て済みのプロビジョニングされた同時実行数 注記このクォータは、プロビジョニングされた同時実行を使用する関数にのみ適用されます。 |
GetFunction API リクエスト数 |
1 秒あたり 100 リクエスト。増やすことはできません。 |
GetPolicy API リクエスト数 |
1 秒あたり 15 リクエスト。増やすことはできません。 |
残りのコントロールプレーン API リクエスト数 (呼び出し、GetFunction、および GetPolicy リクエストを除く) |
すべての API で 1 秒あたり 15 リクエスト (API ごとに 1 秒あたり 15 リクエストではありません)。増やすことはできません。 |
その他のサービス
AWS Identity and Access Management (IAM)、Amazon CloudFront (Lambda@Edge)、Amazon Virtual Private Cloud (Amazon VPC) などの他のサービスのクォータが Lambda 関数に影響を及ぼすことがあります。詳細については、「Amazon Web Services 全般のリファレンス」と「他の AWS サービスからのイベントを使用した Lambda の呼び出し」の「AWS のサービスクォータ」を参照してください。
Lambda を含む多くのアプリケーションは、複数の AWS サービスを使用します。サービスごとにさまざまな機能に対するクォータが異なるため、アプリケーション全体でこれらのクォータを管理することが難しい場合があります。例えば、API Gateway のデフォルトのスロットル制限は 1 秒あたり 10,000 リクエストである一方、Lambda のデフォルト同時実行制限は 1,000 です。この不一致により、Lambda が処理できる API Gateway からの受信リクエストが増える可能性があります。これを解決するには、予想されるトラフィックレベルに合わせて Lambda 同時実行制限の引き上げをリクエストします。
アプリケーションの負荷テストを行うと、アプリケーションを本番稼働にデプロイする前にパフォーマンスをモニタリングできます。負荷テストでは、予想されるトラフィックレベルの制限要因として作用する可能性のあるクォータを特定し、それに応じてアクションを実行することができます。