多分これに関しては、実際に動かすことが理解への近道。
それでも前知識が無いと動かすのは怖いし、とっつきにくい。
なのでホントの基礎部分のみ。
もっと深い所を知りたい人は、公式ドキュメントを見るべし。
Lambdaの概要
AWSが提供するサービスの一つ。
ラムダと読む。

同じLambdaのアイコンでも下図はLambda Function。
特に大きな差があるわけではないので、構成図上同じくLambdaを指しているという認識でOK。
変なアイコンの由来はギリシャ文字の(ラムダ:λ)からきているらしい。

普通、プログラムを動かすためには実行環境を用意する必要がある。
開発言語に応じてpythonやjava、.NET Frameworkなどインストールするなど。
ネット上で利用するには、Webサーバーを立てておく必要があったりもする。
こういった構築が不要で、実行したいプログラムを作って、配置して、実行出来るのがLambda。
現在、流行りの所謂サーバーレスアーキテクチャ。
他にも、関連するサービス(API GatewayやS3など)との連携設定がしやすい、
料金についても、プログラムが実行された時間だけ課金されるなど、
実行環境の構築や運用保守の手間が削減することが出来る。
イベントトリガー
Lambdaは何かしらのイベントによってプログラムを実行する。
それを事前に設定しておくことで、AWSの各サービスを連携できる。
下記は一例で、他の連携も多数用意されている。
- S3にファイルをアップロードした時に実行
- S3からファイルを削除した時に実行
- クライアントから通信を受けたら実行
身近のところで、Amazon EchoなどAIスピーカーから声のキーワードをトリガーにして、
自分の作ったプログラムを動かすといったことも出来たりする。
ログ
プログラム実行といえば、実行ログ。
異常があった際の調査やデバッグには必須。
LambdaのログはAWS CloudWatchで確認することが出来る。
CloudWatchでは過去ログの検索が簡単できたり、
特定の文字列を含むログが出力された場合にメールを飛ばす、
チャットツールに通知を出すといったことが可能。
ログは上手く出力されないといったケースも割と起こりがち。
その場合、CloudWatch Logsへの書込み権限が付与されているか、
開発言語ごとのログ出力形式、設定がされているかを確認する必要がある。
その他の設定
上げていくとキリがないので、細かい項目は実際のコンソールを参照。
- 環境変数(実行時の引数)
- メモリ(128MB ~ 3008MB(約3GB))
- タイムアウト(1秒 ~ 15分)
- 同時実行数(最大は1000)
- 1つイベントトリガーが発生したら、同時に10並列で実行するなど
コメント