Deno Deploy 新手教程
Deno Deploy,我们的全球 V8 隔离云,不仅让 JavaScript、TypeScript 和 Wasm 在全球范围内秒级部署变得轻而易举,还提供了一系列云原生功能—— Deno KV、Cron 和 Queues——这些功能能够全球分布式运行以实现最佳性能。
我们最近更新了 Deno Deploy 入门流程,以便在 Deploy 的上下文中介绍这些云原生功能。您的新的 Deno Deploy 仪表盘现在顶部包含资源,包括一个指向“学习乐园”(Learning Playground)的链接,我们将在下面详细介绍。
⚠️ 体验将 JavaScript 和 TypeScript 部署到云端的最快方式。立即注册免费的 Deno Deploy 账户。
新的 Deno Deploy 仪表盘
您的新 Deno Deploy 仪表盘现在包括资源、项目和账户范围的指标。红色圆圈突出显示了“学习乐园”(Learning Playground),它将带您进入一系列教程。
在 最近更新的项目下,您会看到一个新的绿色标签,
Deno EDU,这意味着该项目是入门教程之一。
让我们来看看“学习乐园”中包含的教程。
您的新学习乐园
学习乐园目前涵盖了五个简单的用例
- 创建 HTTP 服务器,
- 使用 Deno KV 将数据持久化到全局 KV 存储,
- 使用 Hono 构建 REST API,
- 使用 WebSockets 设置实时应用程序,以及
- 使用 Deno Cron 安排重复任务
目标是帮助新用户熟悉 Deno Deploy 平台、Deno 内置的云原生功能,并指导他们在 Deno Deploy 上成功构建和托管自己的项目。
为了让您更好地了解这种新的入门体验,我们来看第一个教程。
一个简单的 HTTP 服务器
“学习乐园”中提供的第一个教程是构建一个简单的 HTTP 服务器。
如果您之前使用过 Deno Deploy 的Playgrounds,那么这应该很熟悉。左侧是关于编辑器中代码的解释、建议和提示。最后,一旦您对代码进行了必要的更改并点击“保存并部署”,您将在右下角看到结果。
完成教程后,您可以通过左侧底部的链接查看另一个教程。
或者,如果您想恢复到原始代码模板,只需点击“重置”按钮。
那么我们来看看另一个教程,这次使用一个云原生功能怎么样?
使用 Deno KV 持久化数据
Deno KV是一个零配置、全球分布式、支持 ACID 的键值数据库,它内置于运行时中,这意味着您可以跳过数据库配置和管理 API 密钥的麻烦,只需一行代码即可连接到数据库
const kv = await Deno.openKv();
虽然您可以在 Deno 中使用它,但当项目部署到 Deno Deploy 时,它将成为一个具有多个读取区域的全球分布式数据库,以实现最佳性能。
本教程通过创建一个服务器来温和地介绍 Deno KV,该服务器使用每次请求来递增并存储 Deno KV 中的计数器。
保存并部署后,学习乐园的输出现在显示三个新标签页:日志(Logs)、KV 和 Cron。注意:您在 Deno Deploy 上的所有项目都将在项目设置中看到这些标签页。
在 KV 标签页下,您会看到键["visitors"]
已填充计数器值。
使用 Deno Cron 安排重复任务
Deno.cron
是一个零配置、创建计划任务的简单方式,它内置于运行时中。当在 Deno Deploy 上使用时,它会自动被检测和管理——您甚至可以无需 Web 服务器或持续的传入请求来保持您的隔离(isolate)活跃,就能运行 cron 任务。Deno Deploy 在幕后处理所有这些。
本教程向您展示如何使用 cron 表达式创建计划任务,以及如何使用 Deno KV 跟踪此任务的执行次数。
当您点击学习乐园输出中的“cron”标签页时,您可以看到 Deno Deploy 检测到的任务:它的名称、计划(以 cron 语法表示),以及上次执行的时间。请注意,这个 cron 标签页在您所有 Deno Deploy 项目的设置视图中也可用。
有入门教程建议吗?请在此处告诉我们。
接下来是什么?
Deno Deploy是一种简单快速地托管 JavaScript 和 TypeScript 的方式。借助原生 TypeScript 支持、Web 标准 API、原生 Node 和npm 模块支持,以及Deno KV、Cron 和Queues等内置云原生功能,您可以更轻松、更快速地构建复杂的生产应用程序。
如果您没有现有项目并想尝试 Deno Deploy,可以尝试分叉并编辑这个更高级的、使用 Deno cron 调用天气 API 的 Playground——这是在互联网上托管 JavaScript 最快的方式。