こんにちは、ロジカル・アーツの井川です。
AWS LambdaでNode.js 8.10を使用されている場合はご注意いただきたいお知らせがあります!
AWS LambdaでNode.js 8.10のサポートが2019年12月31日に終了し、利用を制限するとのことです。
制限の具体的なスケジュールやNode.jsの新しいバージョンについて情報をまとめておきたいと思います。
使えなくなるスケジュール
以下はAWSから案内のあった内容の抜粋です。
For Node.js 8.x, there will be 2 stages to the runtime deprecation process:
Disable Function Create – Beginning January 6, 2020, customers will no longer be able to create functions using Node.js 8.10
Disable Function Update – Beginning February 3, 2020, customers will no longer be able to update functions using Node.js 8.10
After this period, both function creation and updates will be disabled permanently. However, existing Node 8.x functions will still be available > to process invocation events.
内容は利用制限のスケジュールで、時系列にまとめると以下のようになります。
2020年1月6日:Node.js 8.10を使用した関数の新規作成ができなくなる
2020年2月3日:Node.js 8.10を使用した既存の関数の更新ができなくなる
ただし、関数の呼び出しは引き続き実行可能のようなので、安心しました!
リリーススケジュール
以下はGitHubで公開されているNode.jsのリリーススケジュールです。 (2019年11月時点)
Release | Status | Codename | Initial Release | Active LTS Start | Maintenance Start | End-of-life |
---|---|---|---|---|---|---|
8.x | Maintenance LTS | Carbon | 2017-05-30 | 2017-10-31 | 2019-01-01 | December 2019 |
10.x | Active LTS | Dubnium | 2018-04-24 | 2018-10-30 | April 2020 | April 2021 |
12.x | Active LTS | Erbium | 2019-04-23 | 2019-10-21 | October 2020 | April 2022 |
13.x | Current | 2019-10-22 | June 2020 | |||
14.x | Pending | April 2020 | October 2020 | October 2021 | April 2023 |
2019年11月時点の最新版は13.xで、安定版は12.xと10.xです。
AWS Lambdaでは12.xと10.xのランタイムを選択することができます。
それぞれ特徴は以下があります。
Node.js 10.x
Node.js 12.x
- JavaScriptエンジンのV8が「V8 7.4」にアップグレードされ、JavaScriptのパースが高速に
- Asyncのスタックトレースが可能に
- 引数のミスマッチ時のコールが高速になる
- デフォルトのヒープサイズが700MBから1400MBへ引き上げ
- TLS 1.3のサポート
- デフォルトのHTTPパーサーがllhttpになったことでテストやメンテナンスが容易
- ビルトインライブラリのコードキャッシュなどにより起動が高速化
- ECMAScript 6のModule機能が実験的に実装
10.xを選択する理由が無ければ、機能とサポート期間が充実している12.xで作成するのが良さそうですね!
まとめ
今回はNode.jsについてのお知らせでしたが、他のランタイムも同様にサポート期限が設定されています。この機会にサポート終了日を把握しておくと余裕を持って計画できますね。
どのバージョンに更新するかライフサイクルと相談しながら対応していきましょう。
参考サイト
- https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/runtime-support-policy.html
- https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/lambda-runtimes.html
- https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/programming-model.html
- Node.js 10がリリース、N-APIが安定化しV8非依存に。2年半前に初のLTSとなったNode.js 4.xはついにEOL - Publickey
- 「Node.js 10.0」リリース、3年間のサポートが提供される新安定版 | OSDN Magazine
- Node.js v10の変更点まとめ - 技術探し
- Node.js 12正式版が登場、1年ぶりのLTS対象バージョン。起動高速化、TLS1.3対応、ES6モジュールの実験的サポートなど - Publickey
- node.js 12 LTS(予定) がリリースされました - Qiita