AWS Lambda
開発者ガイド

AWS Lambda ランタイム

AWS Lambda では、ランタイムの使用を通じて複数の言語がサポートされます。関数を作成するときにランタイムを選択し、関数の設定を更新してランタイムを変更することができます。基盤となる実行環境は、関数コードからアクセスすることができる追加のライブラリと環境変数を提供します。

関数が呼び出されると、Lambda は以前の呼び出し (使用可能な場合) から実行環境を再利用しようとします。これにより、実行環境の準備時間を節約でき、実行コンテキストでデータベース接続や一時ファイルなどのリソースを節約して、関数が実行されるたびにそれらが作成されるのを防ぐことができます。

ランタイムは単一バージョンの言語、複数バージョンの言語、または複数の言語をサポートできます。言語またはフレームワークバージョンに固有のランタイムは、バージョンのサポートが終了すると廃止されます。

Node.js ランタイム

名前 識別子 AWS SDK for JavaScript

Node.js 8.10

nodejs8.10

2.290.0

Node.js 6.10

nodejs6.10

2.290.0

Python ランタイム

名前 識別子 AWS SDK for Python

Python 3.6

python3.6

boto3-1.7.74 botocore-1.10.74

Python 3.7

python3.7

boto3-1.9.42 botocore-1.12.42

Python 2.7

python2.7

該当なし

Ruby ランタイム

名前 識別子

Ruby 2.5

ruby2.5

Java ランタイム

名前 識別子 JDK

Java 8

java8

java-1.8.0-openjdk

Go ランタイム

名前 識別子

Go 1.x

go1.x

.NET ランタイム

名前 識別子 言語

.NET Core 2.1

dotnetcore2.1

C#

PowerShell Core 6.0

.NET Core 2.0

dotnetcore2.0

C#

.NET Core 1.0

dotnetcore1.0

C#

Lambda で他の言語を使用するには、カスタムランタイムを実装できます。Lambda 実行環境には、呼び出しイベントの取得とレスポンスの送信を行うためのランタイムインターフェイスが搭載されています。カスタムランタイムは関数コードと一緒に、またはレイヤーでデプロイできます。