【速報】AWS Lambda@Edgeが発表されました! #reinvent

2016.12.02

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

こんにちは、中山です。

re:Invent 2016に参加中です。現地時間12/1(木)の8:30から実施されているWerner Vogels氏によるキーノートの中で発表された新サービス、AWS Lambda@Edgeについてレポートします。

AWS Lambda@Edgeとは何か

一言で説明すると「CloudFrontのエッジロケーションでLambdaを実行する仕組み」です。Lambda関数をCloudFrontのイベント発生時に起動させることが可能です。現在イベントには以下の4つがあるようです。

  • Viewer Request
    • クライアントがCloudFrontにHTTP(S)でアクセスし、そのリクエストがエッジロケーションに到達した時に発生するイベント
  • Viewer Response
    • リクエストをしたクライアントへエッジロケーションからレスポンスを返す際に発生するイベント
  • Origin Request
    • エッジロケーションにキャッシュが残っていない状態で、クライアントからのリクエストがオリジンに送信される際に発生するイベント
  • Origin Response
    • オリジンからエッジロケーションにレスポンスがある場合に発生するイベント

これらのイベント発生時に起動させるLambda関数を指定可能です。例えば、リクエストの種類に応じてHTTPヘッダに特定のヘッダを書き込み、リクエスト分けるといったことが可能です。

現在Preview募集中です!

興味がある方はぜひ応募しましょう!

lambda-at-edge1

まとめ

CloudFrontのイベントを契機にLambda実行なんて夢がひろがりんぐな機能ですね。例えば、特定のクッキーを要求して簡易的なアクセス制御を実装したり、あるクライントには特定のページを見せるといったA/Bテストもできるかもしれません。今後はより使い込んでもっと詳細な情報をお届けしようと思います。