簡単なサーバレスアプリ構築で分かるAWS Lambdaの実装方法の基本:AWS Lambdaで始めるサーバレスアーキテクチャ入門(2)(2/2 ページ)
システム開発の常識を覆す「サーバレスアーキテクチャ」について「AWS Lambda」を使って構築方法を学ぶ連載。今回は、サンプルとなるサーバレスアプリケーションの構築を例にAWS Lambdaの実装方法の基本を解説します。
Lambda関数のテスト
作成したLambda関数のテストを行います。
まず、sample-upload-bucketに適当なコンテンツをアップロードします。ここでは、S3 Bucketの直下にsample.txtというコンテンツをアップロードします。
続いてLambda関数のコンソール画面で、先ほど作成したLambda関数を選択し、「アクション」→「テストイベントの設定」とクリックします。サンプルイベントテンプレートを「S3 Put」とし、S3 Bucketの名前とコンテンツのkeyを以下のように修正します。
"s3": { "configurationId": "testConfigRule", "object": { "eTag": "0123456789abcdef0123456789abcdef", "sequencer": "0A1B2C3D4E5F678901", "key": "sample.txt", "size": 1024 }, "bucket": { "arn": "arn:aws:s3:::mybucket", "name": "sample-upload-bucket", "ownerIdentity": { "principalId": "EXAMPLE" } }, "s3SchemaVersion": "1.0" }
テンプレートの修正が完了したら、「保存してテスト」をクリックします。すると、画面の下部に実行結果が表示されるので確認します。「complete!」と表示されていたら処理が完了しています。
実行結果の画面ではLambda関数の処理時間や使用したメモリを確認することもできます。
sample-copy-bucketの直下にsample.txtがコピーされていることを確認し、Lambda関数のテストは終了です。
イベントトリガーの設定
最後にS3 Bucketのイベントトリガーを設定します。
Amazon S3のコンソール画面からsample-upload-bucketを選択後、「プロパティ」→「Events」とクリックします。今回はコンテンツのアップロード時にLambda関数を実行させたいので、イベントの種類は「Put」を選択し、送信先に先ほど作成したLambda関数を指定します。ここでは「sample-event」という名前でイベントトリガーを設定しました。
以上でサーバレスアプリケーションの構築は完了です。
テスト実行
では、構築したサーバレスアプリケーションをテストしてみます。
Amazon S3のコンソール画面で、sample-upload-bucketに適当なコンテンツをアップロードします。ここでは画像ファイル「sample-image.jpg」をアップロードします。
すると、sample-copy-bucketに同一のファイルがコピーされました。
次回は、AWSとSlackとGitHubを連携させた実用的なサーバレスアーキテクチャ
今回はサンプルとなるサーバレスアプリケーションの構築を例にAWS Lambdaの実装方法を解説しましたが、いかがだったでしょうか。
次回はAWSとSlackとGitHubを連携させたより実用的なサーバレスアーキテクチャの構築方法について解説していきます。お楽しみに。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- AWS Lambdaの実現するイベントドリブンなプログラミングが、IoTへの扉を開く
米Amazon Web Servicesは、IoTアプリケーションの今後をどう描き、開発者にどのように構築してもらいたいのか。同社でモバイルとIoTを統括するモバイル担当副社長、マルコ・アルジェンティ氏へのインタビューの前編をお届けする。 - 米マイクロソフト、AWS Lambda的なサービス「Azure Functions」を発表
米マイクロソフトは2016年3月31日(米国時間)、AWS Lambda、Google Cloud Functionsと同様なイベントドリブン、サーバレスなコンピュートサービス、「Azure Functions」を発表した。同社はさらに、Azure Functions関連コードをオープンソースとして公開するため、Azure以外のプラットフォームでも動かせる。 - 米IBMがAWS Lambda的なサービスOpenWhiskを発表、オープンソース提供も
米IBMは2016年2月22日(米国時間)、AWS Lambdaに似たイベントドリブンなプログラミングサービス「Bluemix OpenWhisk」を発表した。同時にこれを、Apache 2.0ライセンスに基づくオープンソースコードとして公開。同社は特徴として、オープン性とエコシステムの展開を強調している。