AWS Lambdaとは、AWSが提供するサーバーレスコンピューティングだそうです
本家サイトでは
サーバーをプロビジョニングしたり管理する必要なくコードを実行できるコンピューティングサービスです
と書かれていました
サーバーに関する知識が薄い管理人はちょっとピントきませんでした・・・。
そもそもサーバーレスとは?
簡単にいうと、サーバーはあるけど自分で管理しなくても大丈夫だよ(管理が不要=レス)ということらしい。紛らわしい名前なのでちょっと不適当では?という意見も多くあるらしいです
で、何がいいかは一目瞭然で今まで逐一自分たちでやっていたサーバーの設定だったり管理を丸っとやらなくてよくなるというもの
サーバーエンジニアがおらず、アプリケーションエンジニアだけの場合かなりありがたいですね
AWS Lambdaとは?
AWS Lambdaはサーバーレスを実現するために、プログラムの実行環境を提供するサービスの一つです
従来であればWebサーバー・アプリケーションサーバーを用意する必要がありましたが、AWS Lambdaの場合は動かしたいプログラムが一つあるだけでOK。現物?さえあれば実行できてしまうんです
正直これだけではいまいちピント来ない
原理とかは置いておいて、もう少し追記すると
Lambdaは、何かイベントが起きたらあらかじめ設定しておいた処理(関数)が実行されるようになっている環境ということらしい
例えば、通常Webアプリケーションサーバーへアクセスのリクエストがあった場合、そのイベントをきっかけにDBへの登録などの処理が走ります
Lambdaは純粋に「DBへ登録する」という処理だけ作ればOKということ
AWS Lambdaのそのほかのメリット
本当にやりたい処理だけ書けばいいから手間がないという以外にも実はメリットがあります
普通レンタルサーバーを借りる場合は、どんなにアクセスが来なくても借りている間ずっと費用がかかっています
でもLambdaの場合、処理が実行された時間分だけ費用がかかります
しかも毎月100万リクエストまで無料で使えます
そのほか、セキュリティーオートメーションで、ログ監視で異常が検出されたら自動デポートを閉じたりとセキュリティー面も自動でやってくれます
極力管理コストを下げるためにクラウドを使う訳ですから、Lambdaは現在かなりニーズを満たしていると言えるような気がします