Skip to Content
AWS Lambdaのプログラミング
book

AWS Lambdaのプログラミング

by John Chapin, Mike Roberts
March 2025
Intermediate to advanced
278 pages
4h 2m
Japanese
O'Reilly Media, Inc.
Book available
Content preview from AWS Lambdaのプログラミング

第5章 サーバーレスアプリケーションの構築 サーバーレス・アプリケーションを構築する

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

ここまで、Lambda関数のプログラミング方法、パッケージングとデプロイ方法、入出力の処理方法など、Lambdaについて多くのことを話してきた。しかし、Lambdaの重要な側面として、これまであまり取り上げてこなかったのは、Lambda関数が別のシステムで書いたコードから直接呼び出されることはほとんどないということだ。 代わりに、Lambdaの大半の使い方では、別のAWSサービスであるイベントソーストリガー)を設定し、AWSにLambda関数を呼び出してもらう。

Lambdaアプリケーションとはどのようなものか」で、その例をいくつか見てきた:

  • HTTP APIを実装するために、イベントソースとしてAWS API Gatewayを設定する。

  • ファイル処理を実装するために、イベント・ソースとしてS3を構成する。

Lambdaと直接統合するAWSサービスは数多くあり、間接的に統合するサービスもある。 つまり、Lambdaをコンピュートプラットフォームとして利用することで、膨大なタスクを実行できるサーバーレスアプリケーションを構築できるのだ。

この章では、イベントソースをLambdaに結びつける方法について見ていき、このテクニックを使って特定のタイプのアプリケーションを構築する方法を探っていく。 その過程で、Lambdaベースのアプリケーションをアーキテクト、ビルド、パッケージ、デプロイする方法について、前章で学んだ知識を基に詳しく学んでいく。

もしまだそうしていなければ、この章の例を試す前に、例のソースコードをダウンロードしておくといいだろう。

Lambdaイベントソース

先ほど学んだように、Lambdaの典型的な使用パターンは、関数をイベントソースに結びつけることだ。このセクションでは、特定の上流サービスと統合するためにLambda関数を構築する際のワークフローについて説明する。

イベント・ソースの入出力を扱うコードを書く

特定のイベントソースに反応するようにLambda関数をプログラミングする場合、一般的に最初に行いたいことは、Lambda関数が受け取るイベントの形式を理解することだ。

sam local generate-event このコマンドを実行すると、 スタブイベントを生成できるすべてのサービスがリストされる。例えば、 の出力の一部は以下のようになる:sam sam local generate-event

Commands:
  alexa-skills-kit
  alexa-smart-home
  apigateway
  batch
  cloudformation
  cloudfront
  cloudwatch
  codecommit
  codepipeline

サーバーレスHTTP APIの構築に興味があるとしよう。 この場合、AWS APIゲートウェイをアップストリームイベントソースとして使用する。sam local generate-event apigateway を実行すると、以下のような出力が得られる:

Commands: authorizer Generates an Amazon API Gateway Authorizer Event aws-proxy Generates an Amazon API ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

AWS クックブック

AWS クックブック

John Culkin, Mike Zazon
入門 Kubernetes

入門 Kubernetes

Kelsey Hightower, Brendan Burns, Joe Beda, 松浦 隼人

Publisher Resources

ISBN: 9798341636026Supplemental Content