こんにちは、hidesanです。
今回は、Lambda開発の初めの一歩ということで、Lambdaについてご紹介したいと思います。
最近ではサーバーレス開発が脚光を浴びておりますが、
AWSでサーバーレス開発を行うのに欠かせないサービスが、このLambdaというサービスなんです。
今までキーワードとしては知っているが、いまいち何ができるのかわからないという方はぜひ本記事をお読みください。
Lambdaとは?
AWS Lambdaとは、AWSが提供するサーバーレスコンピューティングサービスです。
プログラムを書くだけで、そのプログラムをクラウド上で動かすことができます。
通常、プログラムを動かすには、その土台となるサーバー構築が必要ですがAWS Lambdaはサーバー構築をする必要がなくプログラムを動かすことができます。
なのでサーバーレスというわけなんです。
料金は、実行した際のメモリ使用量、および実行時間をもとに算出されます。
プログラムが実行された分だけ課金される仕組みというわけです。
詳細につきましてはAWSの公式ホームページをご確認ください。
なぜサーバーレスなのにコードが実行されるのか?
ここまで説明すると、よくこう思われる方がいると思います。
「サーバーが無いのに、なぜプログラムが動かせるの?」
ここで勘違いしないでいただきたいのが、
× サーバーレス=サーバーが無い
ではなく、
○ サーバーレス=サーバーを意識しないで良い
ということです。
つまり、Lambdaサービスはプログラムが動くサーバーは裏であるんだけど、
我々利用者側はサーバーの構築やOS、プログラムの実行環境なんかを意識しないで良いというわけなんです。
この考え方はLambdaだけではなく、その他多くのサーバーレスサービスに通ずることですので、ぜひ覚えておいてくださいね。
Lambda関数の作り方
それでは、試しにLambdaを作ってみましょう!
作成したLambdaは、正式にはLambda関数と呼ぼれております。
ですので、Lambdaのプログラムを実行する=Lambda関数を実行するということになりますので覚えておいてくださいね。
(1) Lambdaのマネジメントコンソールへ移動します
(2) 左メニューから[関数]をクリックし、右上にある[関数の作成]ボタンをクリックします
(3) [関数名]欄に任意の関数名を入力し、[関数の作成]ボタンをクリックします
※下図では”hidesan-test-lambda”という関数名を入力しています
上記では触れておりませんが、Lambda関数は様々な言語で開発が可能です。
実際にLambda開発する際は、開発言語に合わせてランタイムも変更してください。
<2020.5.16時点でサポートしているランタイム>
(4) 既に簡単なコードが書かれておりますが、実際にプログラムを書く部分は下図の赤枠の部分となります。
今回は単純に「Lambda関数を試しに作ってみる」ということですので、プログラムはそのままとして、これでLambda関数は作成完了です。
あとはどうやってLambda関数を起動させるのかとか、細かな設定などのお話となるわけです。
そのご説明はまた後日別の記事でさせていただきますね。
まとめ
いかがでしたでしょうか?
簡単にLambda関数って作れることがおわかりいただいたかと思います。
サーバーレスでシステム開発することはもちろん、AWSを利用する上でLambdaサービスは非常に使うことが多いサービスですので、ぜひこの機会にお試しいただければと思います。
以上、hidesanでした!