跳到主要内容

部署到 Azure Functions

本指南解释了如何在使用 Azure Functions 将基于 Node.js 的函数应用部署到 Azure 时避免常见问题。

Azure Functions 是一个无服务器部署平台。 你无需维护基础设施即可部署代码。 使用 Azure Functions,基本构建块是 函数应用。 函数应用在 Azure 中提供一个执行上下文,你的函数在其中运行。 它由 Azure 一起管理、部署和扩展的一个或多个单独的函数组成。 你可以将多个函数组织起来并作为一个逻辑单元进行集体管理。

先决条件

  • 一个现有的带有 Prisma ORM 的函数应用项目

须知事项

虽然 Prisma ORM 与 Azure Functions 配合良好,但在部署应用程序之前,有一些事项需要注意。

定义多个二进制目标

在部署函数应用时,Azure Functions 运行远程构建的操作系统与用于托管函数的操作系统不同。 因此,我们建议在你的 Prisma schema 中指定以下 binaryTargets 选项

schema.prisma
generator client {
provider = "prisma-client-js"
binaryTargets = ["native", "debian-openssl-1.1.x"]
}

连接池

通常,当您使用 FaaS (函数即服务) 环境与数据库交互时,每次函数调用都可能导致与数据库建立新连接。 这对于持续运行的 Node.js 服务器来说不是问题。 因此,池化数据库连接以获得更好的性能是有益的。 要解决此问题,您可以使用 Prisma Accelerate。 对于其他解决方案,请参阅无服务器环境的连接管理指南

总结

要更深入地了解 Prisma Client 的 API,请浏览函数处理程序并查看 Prisma Client API 参考