Lambda 関数のメモリを設定
Lambda は、設定されたメモリの量に比例して CPU パワーを割り当てます。メモリは、実行時に Lambda 関数で使用できるメモリの量です。[メモリ] 設定を使用して、関数に割り当てられたメモリと CPU パワーを増減できます。メモリは、128 MB~10,240 MB の値を 1 MB 単位で設定できます。1,769 MB の場合、1 つの vCPU (1 秒あたりのクレジットの 1 vCPU 秒分) に相当します。
このページでは、Lambda 関数のメモリ設定を更新の方法とタイミングについて説明します。
セクション
Lambda 関数の適切なメモリ設定を確認する
メモリは、関数のパフォーマンスを制御するための主要な手段です。デフォルト設定の 128 MB は、設定可能な最小値です。イベントを変換して他のサービスにルーティングする関数など、シンプルな Lambda 関数には 128 MB で使用することをお勧めしますAWS。メモリ割り当てを増やすと、インポートされたライブラリ Lambda レイヤー、Amazon Simple Storage Service (Amazon S3)、または Amazon Elastic File System (Amazon EFS) を使用する関数のパフォーマンスを向上させることができます。メモリを追加すると、CPU の処理量が比例的に増加して、計算能力全体が向上します。関数が CPU、ネットワーク、またはメモリにバインドされている場合、メモリ設定を増やすとパフォーマンスが大幅に向上する可能性があります。
適切なメモリ設定を見つけるには、Amazon CloudWatch で関数をモニタリングし、メモリ消費量が設定された最大値に近づいた場合にアラームを設定します。これにより、メモリバウンド関数を識別できます。CPU バウンド関数および IO バウンド関数の場合、時間をモニタリングするとインサイトを得ることもできます。このような場合、メモリを増やすと、コンピューティングまたはネットワークのボトルネックを解決するのに役立つことがあります。
オープンソースの AWS Lambda パワーチューニング
関数メモリの設定 (コンソール)
関数のメモリは Lambda コンソールで設定できます。
関数のメモリ割り当てを変更するには
Lambda コンソールの [関数ページ]
を開きます。 -
関数を選択します。
-
[設定] を選択してから、[一般設定] を選択します。
-
[全般設定] で、[編集] を選択します。
-
[メモリ] に、128 MB から 10,240 MB の値を設定します。
-
[Save] を選択します。
関数のメモリの設定 (AWS CLI)
update-function-configuration
aws lambda update-function-configuration \ --function-name
my-function
\ --memory-size1024
関数のメモリの設定 (AWS SAM)
AWS Serverless Application Model を使用して、関数のメモリを設定できます。template.yaml
ファイル内の MemorySize プロパティを更新し、sam deploy を実行します。
例 template.yaml
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: An AWS Serverless Application Model template describing your function. Resources:
my-function
: Type: AWS::Serverless::Function Properties: CodeUri: . Description: '' MemorySize:1024
# Other function properties...
関数のメモリーの推奨事項を受け入れる (コンソール)
AWS Identity and Access Management (IAM) での管理者権限がある場合は、Lambda 関数のメモリ設定に関する推奨事項を、AWS Compute Optimizer から受け取るようにオプトインできます。アカウントまたは組織でメモリの推奨事項にオプトインする手順については、AWS Compute Optimizer ユーザーガイドの「アカウントにオプトインする」を参照してください。
注記
Compute Optimizer は x86_64 アーキテクチャを使用する関数のみをサポートします。
オプトインが完了しており、Lambda 関数が Compute Optimizer の要件を満たしている場合は、Compute Optimizer による関数のメモリに関する推奨事項を、Lambda コンソールの [一般設定] で表示したり、受け入れたりすることができます。