AWS、サーバレスの「AWS Lambda」で「.NET Core 2.1」をサポート高パフォーマンスHTTPクライアントや新しい言語機能が利用可能に

AWSは、サーバレスコンピューティングサービス「AWS Lambda」の関数コードを、「.NET Core 2.1」ランタイムを使ってC#で作成できるようにした。

» 2018年07月11日 15時00分 公開
[@IT]

 Amazon Web Services(AWS)は2018年7月9日(米国時間)、サーバレスコンピューティングサービス「AWS Lambda」の関数コードが、「.NET Core 2.1」ランタイムを使ってC#で作成できるようになったと発表した。

 AWS Lambdaは2018年1月から「.NET Core 2.0」をサポートしている。AWSは、.NET Core 2.0ベースのAWS Lambda関数については、.NET Core 2.1にできるだけ早く更新することを勧めている。Microsoftは今夏から.NET Core 2.1の長期サポート(LTS)を提供する予定で、このサポートは3年間継続される。

 その一方でMicrosoftは、.NET Core 2.0のサポートを2018年10月初めに終了する。これに伴い、AWS Lambdaランタイムサポートポリシーに従って、.NET Core 2.0ベースのAWS Lambda関数は非推奨となる。サポート終了の3カ月後には、.NET Core 2.0を使ってAWS Lambda関数を作成できなくなる。この段階では、既存関数を更新可能だが、6カ月後には、この更新機能も無効になる。

 AWS Lambdaが.NET Core 2.1をサポートしたことで、開発者はこのバージョンの高パフォーマンスHTTPクライアントを利用できる。これは、AWS Lambda関数による他のAWSサービスと統合する上で特に重要になる。さらに、「Span<T>」や「Memory<T>」など、新しい言語機能も使えるようになる。

 .NET Core 2.1を使用してC#でLambda関数を作成する簡単な方法は、「AWS Toolkit for Visual Studio」を使うことだ。このツールキットには、「個々のC# Lambda関数のプロジェクトテンプレート」「C#サーバレスアプリケーション」「両方のプロジェクトタイプをAWSにデプロイするためのツール」が含まれている。

 手動でC# Lambda関数を作成するには、Lambdaランタイムパラメーターを「dotnetcore2.1」と指定し、デプロイするDLLアセンブリと全てのNuGet依存関係のZIPファイルを、AWS CLI(Command Line Interface)またはLambdaコンソールからアップロードする。また、C#で作成されたサーバレスアプリケーションは、「AWS Serverless Application Model」(SAM)を使ってデプロイ、管理できる。

 .NET Core 2.1を使用するLambdaプログラミングモデルは、.NET Core 2.0と完全な互換性がある。.NET Core 2.0ランタイムで動作する既存のC# Lambda関数は、.NETプロジェクトのターゲットフレームワークを「netcoreapp2.1」にアップデートし、関数を「dotnetcore2.1」ランタイムとともに再デプロイすることで、.NET Core 2.1に移行できる。

 .NET Core 2.1ランタイムは、Lambdaが使用可能な全てのリージョンで利用できる。.NET Core AWS Lambdaツールおよびライブラリの最新版は、aws-lambda-dotnetのGitHubリポジトリで公開されている。

 なお、.NET Core 2.1.1が2018年6月下旬にリリースされており、AWSは、これをAWS Lambda環境でできるだけ早く利用できるようにするとしている。

Amazon Lambda とは

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。