重要な概念 - AWS Lambda

重要な概念

Lambda マネージドインスタンスでは、従来の Lambda 関数とは異なる主要な概念がいくつか導入されています。これらの概念を理解することは、EC2 インフラストラクチャに関数を効果的にデプロイおよび管理するうえで不可欠です。

キャパシティープロバイダーは、Lambda マネージドインスタンスの基盤を形成します。キャパシティープロバイダーは、VPC 設定、インスタンス要件、スケーリングポリシーなど、関数が実行されるコンピューティングインフラストラクチャを定義します。キャパシティープロバイダーは関数のセキュリティ境界としても機能します。つまり、同じキャパシティープロバイダーに割り当てられたすべての関数は相互に信頼されている必要があります。

スケーリングの動作は、従来の Lambda 関数とは大きく異なります。マネージドインスタンスは、呼び出しが届いたときにオンデマンドでスケーリングするのではなく、CPU リソース使用率に基づいて非同期的にスケーリングします。このアプローチはコールドスタートを排除しますが、トラフィックの増加を見越した計画が必要になります。トラフィックが 5 分以内に 2 倍を超えると、Lambda が需要に合わせて容量をスケールアップするするため、スロットリングが発生する可能性があります。

セキュリティとアクセス許可は慎重に検討する必要があります。Lambda がキャパシティープロバイダーの EC2 リソースを管理できるようにするには、オペレーターロールのアクセス許可が必要です。さらに、ユーザーはキャパシティープロバイダーに関数を割り当てる lambda:PassCapacityProvider アクセス許可を必要とし、特定のインフラストラクチャで実行可能な関数を制御するためのセキュリティゲートとして機能します。

マルチ同時実行は、マネージドインスタンスの主要な特性です。各実行環境は複数の呼び出しを同時に処理できるため、IO 負荷の高いアプリケーションのリソース使用率を最大化できます。これは、各環境が一度に 1 つのリクエストしか処理しない従来の Lambda とは異なります。この実行モデルでは、ランタイムに応じてスレッドセーフ、状態管理、コンテキストの分離に注意する必要があります。

以下のセクションでは、それぞれの概念に関する詳細情報を提供します。