DVAデプロイ

開発者はAWS SAM(Serverless Application Model)を利用して、Amazon API GatewayとAWS Lambda関数からなるサーバーレスアプリケーションを開発しています。AWSクラウド環境へデプロイする前に、ローカルの開発環境でAPI Gatewayのルーティングをエミュレートし、ブラウザやcURLコマンドを使用してHTTPリクエストを通じた結合テストを行いたいと考えています。この目的で使用すべきコマンドはどれですか。

A
sam local invoke コマンドを実行し、API Gatewayのルーティング設定を含めた結合テストを一括で実行する。
sam local invoke は指定した単一のLambda関数を1回だけ手動で直接呼び出して実行するコマンドであり、API Gatewayとしての持続的なHTTPサーバーを立ち上げる機能はありません。
B
sam local start-api コマンドを実行し、ローカル環境上にDockerベースのHTTPサーバーを起動してテストする。
✓ 正解
sam local start-api は、API GatewayのルーティングやLambdaとの統合動作をローカル環境でエミュレートできるため、持続的なHTTPリクエストを用いたテストに最適です。
C
sam deploy --guided コマンドを実行し、一時的なローカル専用スタックを作成してエンドポイントを検証する。
sam deploy コマンドはクラウド上のAWS環境にリソースをプロビジョニングするためのデプロイコマンドであり、ローカル環境で完結するテスト用の機能は提供していません。
D
sam build コマンドを実行したのち、ローカルのNode.js環境で直接Lambdaのハンドラー関数を呼び出して検証する。
sam build はソースコードの依存関係を解決してデプロイ可能なアーティファクトを生成するコマンドであり、ローカルでAPIのリクエストを待ち受けるテストサーバーを起動するものではありません。

解説

AWS SAM CLIの `sam local start-api` コマンドを使用すると、API GatewayをエミュレートするローカルのHTTPサーバーを立ち上げることができます。このサーバーはDockerコンテナを使用してバックエンドのLambda関数を実行するため、クラウド環境にデプロイする前に、実際のHTTPリクエストを通じたエンドツーエンドのローカルテストやデバッグを迅速に行うことが可能です。ソースコードの変更もリアルタイムに反映されるため、フロントエンド開発者との連携にも非常に有用です。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDVAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
DVA の問題一覧に戻る