⚡ パフォーマンス:AWS Lambdaの使いどころ

【Lambdaの役割(パフォーマンス最適化)】

目次

🔍 1. 結論

💎 一言でいうと AWS Lambdaのパフォーマンスチューニングにおける最大の鉄則は、「Lambdaに割り当てる『メモリ』を増やすと、自動的に『CPU能力とネットワーク帯域』も比例して向上する」 ということです。

  • 処理が遅い(重い)場合、メモリ割り当てを増やすのが唯一かつ最強の解決策。
  • 起動に時間がかかる問題(コールドスタート)には、プロビジョニングされた同時実行 (Provisioned Concurrency) で対処する。

📈 2. SAAで出やすいポイント

  • メモリとCPUの比例関係: Lambdaの設定項目に「CPUコア数」や「クロック周波数」はありません。128MBから10GBの間で「メモリ」を設定すると、AWS側がよしなにCPUパワーを割り当てます。つまり、「処理がタイムアウトして終わらない」場合の対策は 「Lambdaのメモリを増やす」 が正解になります。
  • コールドスタート: Lambdaはしばらく呼び出しがないと、裏のコンテナが破棄されて「寝た状態」になります。次に呼ばれた時に環境を再構築する(OS起動やランタイムのロード)ため、最初の1回だけ数秒の遅延(コールドスタート)が発生します。
  • Provisioned Concurrency (プロビジョニングされた同時実行): コールドスタートを無くすための機能です。あらかじめ指定した数のLambda環境を「常に温かい状態(起動済み)」で待機させておき、レイテンシに敏感なWebアプリなどで一貫した超高速な応答を実現します。

🗝 3. キーワードでの判断

問題文のキーワード 疑う設定・機能
🚀 「Lambdaの計算処理が遅い」「タイムアウトする」「CPU性能を上げたい」 Lambdaに割り当てるメモリサイズを増やす
⏱️ 「最初の1回目の呼び出し時のレイテンシ(コールドスタート)をなくしたい」 Provisioned Concurrency を設定する
📈 「トラフィックに応じて並列処理を一気にスケールさせたい」 AWS Lambda (サーバーレスアーキテクチャ)

⚠️ 4. ひっかけポイント

🚫 よくある誤答パターン – 「LambdaのCPUを高性能モデルに変更する」 → そのような設定項目はありません。選べるのは「アーキテクチャ(x86 か arm64/Graviton)」と「メモリサイズ」だけです。 – 「コールドスタートを防ぐためにCloudWatch Eventsで5分おきにPingを打つ」 → 昔のハック(裏技)ですが、現在はAWS公式の「Provisioned Concurrency」という機能が用意されているため、試験の正解にはなりません。


💡 5. 覚え方

🧠 暗記ショートカット – Lambdaの性能 = 「大食い選手権」。 – 胃袋(メモリ)を大きく設定すると、勝手に顎の力(CPU)も強くなって食べるスピードが上がる。 – コールドスタート = 「寝起きの悪さ」。Provisioned Concurrency で常にカフェインを入れて起こしておく。


📚 6. 関連サービス

アイコン サービス名 高性能化における連携
🚪 API Gateway Lambdaの前段に置き、REST APIやWebSocketの入り口となる
📨 Amazon SQS 大量の非同期メッセージをバッチでLambdaに流し込み、処理効率を最大化する

🗒️ 7. Obsidian管理メモ

  • 見返すタイミング: サーバーレスアーキテクチャのパフォーマンスチューニング学習時
  • 関連ノート候補: AWS_SAA_Serverless_Performance, AWS_SAA_Cold_Start

8. HTMLファイル名: AWS_高性能設計_Lambda.html

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次