AWS Lamdaって?
サーバサイドが必要ない、主にバッチ処理はこれが選定されることが多い。とは言えなんなのかこれ以上知らないので、概要を抑える。
AWS Lambda を使用することで、サーバーのプロビジョニングや管理をすることなく、コードを実行できます。課金は実際に使用したコンピューティング時間に対してのみ発生し、コードが実行されていないときには料金も発生しません。
だからこうやって見ると、どちらかというとアプリケーションとかをトリガーにして動かすパターンが多いのかな。
How it works
AWSアカウントがあれば使える。あとは下記のようなコードを書いて、一番簡単なのはzip uploadか。
package main
import (
"fmt"
"github.com/aws/aws-lambda-go/lambda"
)
type MyEvent struct {
Name string `json:"What is your name?"`
}
type MyResponse struct {
Message string `json:"Answer:"`
}
func hello(event MyEvent) (MyResponse, error) {
return MyResponse{Message: fmt.Sprintf("Hello %s!!", event.Name)}, nil
}
func main() {
lambda.Start(hello)
}