使用 Prisma ORM 和 Cloudflare D1 构建应用程序

自 2017 年推出 Workers 以来,Cloudflare 一直引领边缘计算领域。Cloudflare 最近通过 D1 发布了本机无服务器数据库。我们现在可以使用 Prisma ORM 与 D1 一起构建应用程序。

将数据库部署到边缘

Cloudflare Workers 是一种分布在全球范围内的轻量级无服务器计算形式。它们允许您尽可能靠近最终用户部署和运行应用程序。

D1 是 Cloudflare 用于边缘环境的本机无服务器数据库,它基于 SQLite,可在通过 Cloudflare 部署应用程序时使用。D1 最初于 2022 年推出。

遵循 Cloudflare 的地理分布原则并使计算和数据更接近应用程序用户,D1 支持自动读取复制,它根据数据库获取的查询数量和来自数据库的查询数量,来动态管理数据库实例的数量和只读副本的位置。

这意味着读取查询是针对最接近发出查询的位置的 D1 实例执行的。

虽然您也可以将 Prisma ORM 与其他数据库提供商一起使用只读副本,但这通常需要您使用只读副本客户端扩展。使用 D1 时,开箱即用地支持只读副本,无需专用的客户端扩展。

另一方面,对于写入操作,查询仍然会传输到单个主实例,以便将更改传播到所有读取副本并确保数据一致性。

Prisma ORM 支持 D1

在 Prisma,我们相信 Cloudflare 处于构建应用程序构建和部署方式未来的最前沿。支持 D1 一直是 GitHub 上 Prisma ORM 最受欢迎的功能请求之一。

作为 Cloudflare 作为技术提供商的坚定拥护者,我们很高兴与大家分享,您现在可以在 Cloudflare Workers(和 Pages)内使用 Prisma ORM 来访问 D1 数据库。

请注意,此功能基于当前处于预览版的驱动程序适配器,因此我们认为 D1 支持也处于预览版。

Prisma ORM 和 D1 入门

在下文中,您将找到设置和部署带有 D1 数据库的 Cloudflare Worker 的分步说明,该数据库完全从头开始通过 Prisma ORM 访问。

截至此版本,Prisma Migrate 尚未与 D1 完全兼容。在本教程中,您将结合使用 D1 的迁移系统和 prisma migrate diff 命令来生成并运行迁移。

先决条件

  • 已安装 Node.js 和 npm
  • 一个 Cloudflare 帐户

创建 Cloudflare Worker

第一步,继续使用 npm create 引导普通版本的 Cloudflare Worker(使用 Cloudflare 的 hello-world 模板)。在终端中运行以下命令:

npm create cloudflare@latest prisma-d1-example -- --type hello-world

这将打开一个 CLI 向导,每次出现问题时按回车键选择所有默认选项。

在向导结束时,您应该在域 https://prisma-d1-example.USERNAME.workers.dev 中部署了一个 Cloudflare Worker,它只是在浏览器中呈现「Hello World」:

初始化 Prisma ORM

当您的 Worker 就位后,让我们继续设置 Prisma ORM。首先,导航到项目目录并安装 Prisma CLI:

cd prisma-d1-example
npm install prisma --save-dev

接下来,安装 Prisma 客户端包以及 D1 的驱动程序适配器:

npm install @prisma/client
npm install @prisma/adapter-d1

最后,使用以下命令引导 Prisma ORM 所需的文件:

npx prisma init --datasource-provider sqlite

这个命令做了两件事

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值