目次
AWSは、Node.jsのWebアプリケーションをLambdaに直接デプロイできるAWS Lambda Web Functionsを発表しました。提供された2026年10月20日付のPublickeyの記事によると、Next.js、Express、Hono、Fastifyなどのフレームワークに対応し、東京を含む5リージョンで利用できます。
主なポイント#
- Web Functionsでは、HTTPアダプターを別途管理せずに、Node.jsのWebアプリケーションをLambdaで実行できます。
- 各実行環境はNode.js 24を使用し、2 GBのメモリを備え、最大128件の同時リクエストに対応します。
- リクエストのタイムアウトはデフォルトで30秒で、3秒から15分の範囲で設定できます。
- 本番利用前に、料金、フレームワーク機能の対応範囲、デプロイ要件をAWSのドキュメントで確認する必要があります。
Webアプリで変わること#
Web Functionsは、Node.jsのフレームワークが必要とするWebサーバー機能を提供します。HTTPリクエストを従来のLambda関数ハンドラー向けに変換する代わりに、Node.jsのWebサーバーを中心に構築したアプリケーションをデプロイできます。
発表では、Next.js、Express、Hono、Fastifyへの対応が示されています。また、記事によると、既存のイベント駆動型の関数モデルには「Lambda Event Functions」という名称が導入されます。
実用上の利点は、すでにNode.jsアプリケーションを持つチームにとって、デプロイ方式がシンプルになることです。ただし、「直接デプロイできる」という表現は、あらゆるフレームワーク機能、依存関係、ホスティング連携が設定なしで動作する保証ではありません。
実行上の制限を把握する#
記事に記載された構成から、アプリケーションの移行前に評価すべき具体的な制限が分かります。
| 設定 | 記載された値 | |---|---| | ランタイム | Node.js 24 | | 実行環境ごとのメモリ | 2 GB | | デフォルトのJavaScriptヒープ | 1,024 MB | | 環境ごとの同時リクエスト数 | 最大128件 | | デフォルトのタイムアウト | 30秒 | | 設定可能なタイムアウト | 3~900秒 |
この同時実行数は、1つの実行環境内で同時に処理するリクエスト数を示します。アプリケーション全体の処理能力、スループット、応答時間を示すものではありません。これらはワークロードの特性、スケーリング、サービスクォータに左右されますが、提供された記事にその詳細はありません。
同時リクエストは実行環境のリソースを共有するため、メモリには注意が必要です。大きなペイロードを処理したり、サーバーサイドレンダリングを行ったりするアプリケーションは、実際に想定される同時リクエスト数でテストする必要があります。また、2 GBのメモリ割り当てと、デフォルトのJavaScriptヒープ上限を混同しないようにしてください。
利用可能なリージョンを確認する#
記事では、対応するAWSリージョンとして次の5つが挙げられています。
- アジアパシフィック:東京。
- 米国東部:バージニア北部、オハイオ。
- 米国西部:オレゴン。
- 欧州:アイルランド。
東京で利用できるため、日本のユーザーにサービスを提供するチームにとって、すぐに検討対象となります。ただし、東京を選ぶだけで許容範囲のレイテンシが得られるとは限りません。データベースの配置場所、外部API呼び出し、アプリケーションの処理も応答時間に影響します。
移行を計画する前に、必要なリージョンがWeb Functionsに対応しているか確認してください。リージョン障害からの復旧要件があるアプリケーションでは、適切なセカンダリリージョンも利用できるか確認します。
本番環境を移行する前にテストする#
小規模なアプリケーションか、切り離して検証できるルートから始めます。AWSのドキュメントでデプロイ手順を確認し、次の4項目を検証してください。
1. ランタイムの互換性: ネイティブモジュールやビルド成果物を含め、依存関係がNode.js 24に対応しているか確認します。 2. フレームワークの動作: サーバーサイドレンダリング、ミドルウェア、ストリーミング、静的アセットなど、アプリケーションが実際に使う機能を試します。 3. 負荷時の動作: 同時リクエスト数を増やしながら、レイテンシ、エラー、メモリ使用量を測定します。 4. 運用要件: ログ、シークレット、認証、デプロイのロールバック、データベースやプライベートサービスへの接続を確認します。
デプロイの成功で確認できるのは、アプリケーションが起動することです。本番のワークロードがその実行モデルに適していることまでは証明できません。
提供された記事では、料金、コールドスタート時の動作、スケーリングのクォータ、フレームワークとの詳細な互換性は明らかになっていません。特に既存のホスティングサービスと比較する際は、これらを確認する必要があります。Next.jsに対応しているだけでは、関連するデプロイ手順やマネージド機能も同等だと判断するには不十分です。
次のステップ#
対応リージョンに代表的なルートを1つデプロイし、負荷テストで応答レイテンシ、エラー率、メモリ使用量を記録してから、アプリケーションの残りの部分を移行するか判断してください。
出典: https://www.publickey1.jp/blog/26/aws_lambdanextjshononodejsaws_lambda_web_functions.html
目次
