从边缘连接到 Postgres
Postgres 是最受欢迎的数据库之一。它快速、熟悉且功能丰富。它是许多公司的首选数据库。Postgres 的一个缺点是:应用程序只能通过 TCP 连接到它——而 TCP 协议不被许多边缘无服务器运行时(例如 Cloudflare Workers、Vercel Edge Functions 或 Netlify Edge Handlers)所支持。
这通常是边缘无服务器产品的一个问题。它们不具备在虚拟机或 Kubernetes 容器中运行的应用程序所拥有的相同功能。这使得它们对于许多需要集成到现有系统中的用户来说,难以开始使用。
通过 Deno Deploy,我们正在构建一个功能更强大的边缘无服务器系统。开发者应该能够像往常一样在本地进行开发:连接到 Postgres、从磁盘读取静态文件,以及使用环境变量进行配置。然后,他们可以将其部署到我们全球28个区域,无需额外的样板代码、配置,也不必担心缺少功能。
那么问题来了:我们如何从边缘连接到 Postgres?很简单,您导入驱动程序,像往常一样连接到数据库,然后运行查询…… 真的没什么特别的。
在 Deno Deploy 上,您可以**从边缘**连接到您的 Postgres 数据库(甚至支持 TLS 和自定义 CA 证书)。您还可以通过非 HTTP 协议连接到其他数据库,如 Redis、MySQL 或 MongoDB。为了充分利用 Deno Deploy 的全球性特点,您可以使用 Postgres 接口连接到全球分布式 Cockroach DB 数据库。或者,使用其新的 Postgres 接口连接到全球Google Spanner 实例。
甚至,您还可以连接到更不常见的系统,比如 MQTT,甚至使用 Minecraft RCON 管理您的 Minecraft 游戏服务器。
如果您想更详细地了解如何在 Deno Deploy 上使用 Postgres,请查阅 Deno Deploy 文档中的Postgres 教程。您还可以查阅 Deno 文档中关于 Deno.connect
、Deno.connectTls
和 Deno.startTls
的内容——这些是用于从 Deno 和 Deno Deploy 创建出站 TCP 和 TLS 连接的 API。