AWS Lambda

将 Nitro 应用部署到 AWS Lambda。

预设: aws_lambda

Read more in AWS Lambda.

Nitro 提供了一个内置预设,用于生成与 AWS Lambda 兼容的输出。.output/server/index.mjs 中的输出入口点与 AWS Lambda 格式 兼容。

它可以以编程方式使用,或作为部署的一部分。

import { handler } from './.output/server'

// 以编程方式使用
const { statusCode, headers, body } = handler({ rawPath: '/' })

#内联代码块

默认情况下,Nitro 输出使用动态代码块,仅在需要时才延迟加载代码。不过,这并不总是有利于性能(请参阅 nitrojs/nitro#650 中的讨论)。你可以使用 inlineDynamicImports 配置启用代码块内联。

nitro.config.ts
import { defineConfig } from "nitro";

export default defineConfig({
  inlineDynamicImports: true
});

#响应流式传输

Read more in AWS Lambda 响应流式传输简介.
Read more in 介绍 AWS Lambda 响应流式传输.

要启用响应流式传输,请设置 awsLambda.streaming 标志:

nitro.config.ts
import { defineConfig } from "nitro";

export default defineConfig({
  awsLambda: {
    streaming: true
  }
});