Cloud Service
AWS Lambda
サーバー管理なしでコードをイベント実行できるサーバーレスの代表格。使った分(ミリ秒)だけ課金。
中級SAA-C03DVA-C02SOA-C02SAP-C02コスト最適化パフォーマンス効率運用上の優秀性信頼性
最終更新: 2026-05-31公式ドキュメント ↗
TL;DR要点だけ先に
- 1.コードを置くとイベントで自動実行。サーバーの用意・運用は一切不要。
- 2.実行した時間(ミリ秒)×メモリ分だけ課金。アイドル時は無料。
- 3.イベント駆動・短時間処理向き。常時稼働や長時間処理は EC2 / コンテナへ。

解決する課題
- サーバーを常時立てておくのはもったいない/面倒 → イベント時だけ動かす
- 急なスパイクに自動でスケールしてほしい
- 「画像がアップされたら縮小」「キューにメッセージが来たら処理」を接着剤的に書きたい
主要概念と用語
- 関数: 実行単位のコード(+設定)
- トリガー / イベントソース: S3・API Gateway・SQS・EventBridge など
- ハンドラ: 入口の関数(
eventを受け取る) - 実行ロール: 関数に与えるIAM権限
- 同時実行数(Concurrency): 同時に走るインスタンス数
- コールドスタート: 新しい実行環境の初期化にかかる初回遅延
仕様・制限・クォータ
- 最大実行時間 15分(超えるならStep Functionsで分割やECS/Batchへ)
- メモリ 128MB〜10GB。メモリに比例してCPUも増える
- デプロイパッケージサイズ上限、
/tmpの一時領域あり - 同時実行はアカウント単位の上限(引き上げ可)
内部の仕組み
LambdaはマイクロVM(Firecracker)上で関数を隔離実行します。リクエストが来ると実行環境を用意(=コールドスタート)し、処理後しばらくウォーム状態で再利用。同時に多くのリクエストが来れば、その数だけ環境を並列に増やして水平スケールします。
コールドスタート対策
低レイテンシを安定させたいなら Provisioned Concurrency で事前に温めておく。VPCに入れると初期化が増える場合がある点も意識。
設計パターン / ベストプラクティス
- ステートレスに作り、状態はDynamoDB/S3へ
- 小さく・速く(依存を減らし初期化を軽く)
- 非同期+SQS/DLQ で失敗時のリトライ・退避を担保
- 秘密情報は環境変数ではなく Secrets Manager / SSM Parameter Store
運用・監視・トラブルシュート
- ログは CloudWatch Logs、分散トレースは X-Ray
- 監視メトリクス:
InvocationsErrorsThrottlesDuration - スロットリング多発時は同時実行上限やダウンストリーム(DB)の限界を確認
コスト
- リクエスト数 + 実行時間(GB秒 = メモリ×ミリ秒) で課金。無料枠が大きい
- メモリを上げるとCPUも上がり、速くなって総額が下がることも(要計測)
セキュリティ
- 最小権限の実行ロールを割り当てる
- VPC内リソース(RDS等)へはVPC接続。境界はSGで制御
- 入力検証(API Gateway/イベント)でインジェクション対策
Well-Architected の観点
- コスト最適化: アイドル無料・従量課金
- パフォーマンス効率: イベント駆動で自動スケール
- 運用上の優秀性: サーバー管理レス、IaCでデプロイ
- 信頼性: 非同期+DLQ+リトライ
試験で問われるポイント
頻出
- 実行は最大15分(長時間バッチは不向き)
- コールドスタート対策=Provisioned Concurrency
- 疎結合の処理は SQS/EventBridge → Lambda
📝 Lambda ミニ確認テスト第 1 問 / 全 3 問
Lambda関数の1回の最大実行時間は?
関連サービス・比較
| 観点 | Lambda | Fargate | EC2 |
|---|---|---|---|
| 管理 | 関数だけ(最少) | コンテナ(サーバーレス) | OSまで自分で |
| 課金 | 実行ミリ秒 | 実行時間(vCPU/メモリ) | 起動時間 |
| 向き | イベント/短時間 | 常駐コンテナ | 常駐/特殊要件 |
| 上限 | 15分 | なし | なし |
ハンズオン / CLI例
# zipで関数を作成(実行ロールを指定)
aws lambda create-function \
--function-name resize-image \
--runtime nodejs20.x \
--handler index.handler \
--role arn:aws:iam::123456789012:role/lambda-exec \
--zip-file fileb://function.zip
# 手動でテスト実行
aws lambda invoke --function-name resize-image \
--payload '{"key":"photo.jpg"}' out.json
AWS Service
AWS Lambdaを実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
コンピューティング
比較で見る軸
クラウド: AWS / カテゴリ: コンピューティング / 難易度: intermediate
導入後に効く点
実行した時間(ミリ秒)×メモリ分だけ課金。アイドル時は無料。
先に潰すリスク
サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。
数字・仕様の読み方
- クラウド
- AWS
- カテゴリ
- コンピューティング
- 難易度
- intermediate
- 関連資格
- SAA-C03 / DVA-C02 / SOA-C02 / SAP-C02
- 設計柱
- cost / performance / operational / reliability
判断チェックリスト
- 自社の用途が「コンピューティング / cost」に近いか確認する。
- 強みである「コードを置くとイベントで自動実行。サーバーの用意・運用は一切不要。」が本当に評価軸になるか確認する。
- 注意点の「サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。
他クラウドの同等サービス
役割が近いサービスです。設計の置き換えや比較検討の参考に。